qemu-e2k/scripts
Stefan Hajnoczi c12887e1b0 block-coroutine-wrapper: use qemu_get_current_aio_context()
Use qemu_get_current_aio_context() in mixed wrappers and coroutine
wrappers so that code runs in the caller's AioContext instead of moving
to the BlockDriverState's AioContext. This change is necessary for the
multi-queue block layer where any thread can call into the block layer.

Most wrappers are IO_CODE where it's safe to use the current AioContext
nowadays. BlockDrivers and the core block layer use their own locks and
no longer depend on the AioContext lock for thread-safety.

The bdrv_create() wrapper invokes GLOBAL_STATE code. Using the current
AioContext is safe because this code is only called with the BQL held
from the main loop thread.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230912231037.826804-6-stefanha@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2023-12-21 22:49:28 +01:00
..
ci
coccinelle
codeconverter
coverage
coverity-scan scripts: adjust url to Coverity tools 2023-11-24 16:21:55 +01:00
kvm
modules
oss-fuzz
performance
qapi qapi: Fix QAPISchemaEntity.__repr__() 2023-11-13 10:36:51 +01:00
qemu-guest-agent
qemugdb
qmp
simplebench
tracetool tracetool: avoid invalid escape in Python string 2023-11-09 15:03:02 +08:00
analyse-9p-simpletrace.py
analyse-locks-simpletrace.py
analyze-inclusions
analyze-migration.py tests/qtest/migration-test: Fix analyze-migration.py for s390x 2023-12-20 10:29:23 +01:00
archive-source.sh
block-coroutine-wrapper.py block-coroutine-wrapper: use qemu_get_current_aio_context() 2023-12-21 22:49:28 +01:00
check_sparse.py
checkpatch.pl
clean-header-guards.pl
clean-includes
cleanup-trace-events.pl
cocci-macro-file.h
cpu-x86-uarch-abi.py scripts/cpu-x86-uarch-abi.py: Fix parameter error of cmd 2023-11-07 16:45:18 +00:00
decodetree.py
device-crash-test python/qemu: rename command() to cmd() 2023-10-12 14:21:43 -04:00
disas-objdump.pl
dump-guest-memory.py
entitlement.sh
extract-vsssdk-headers
feature_to_c.py gdbstub: Add num_regs member to GDBFeature 2023-11-08 15:15:23 +00:00
fix-multiline-comments.sh
gensyscalls.sh
get_maintainer.pl scripts/get_maintainer.pl: don't print parentheses 2023-10-17 15:20:53 +02:00
git-submodule.sh
git.orderfile
hxtool
kernel-doc
make-config-poison.sh
make-release
meson-buildoptions.py meson-buildoptions: document the data at the top 2023-10-18 10:01:02 +02:00
meson-buildoptions.sh build-sys: add a "pixman" feature 2023-11-07 14:04:24 +04:00
meson.build
minikconf.py
modinfo-collect.py
modinfo-generate.py
mtest2make.py
nsis.py
probe-gdb-support.py
python_qmp_updater.py scripts: add python_qmp_updater.py 2023-10-12 14:21:44 -04:00
qapi-gen.py
qemu-binfmt-conf.sh
qemu-gdb.py
qemu-stamp.py
qemu-trace-stap
qemu-version.sh
qom-cast-macro-clean-cocci-gen.py
refresh-pxe-roms.sh
render_block_graph.py python/qemu: rename command() to cmd() 2023-10-12 14:21:43 -04:00
replay-dump.py
shaderinclude.py
signrom.py
simpletrace.py
symlink-install-tree.py
tracetool.py
u2f-setup-gen.py
undefsym.py
update-linux-headers.sh scripts/update-linux-headers: Add iommufd.h 2023-10-18 10:10:49 +02:00
update-mips-syscall-args.sh
update-syscalltbl.sh
userfaultfd-wrlat.py
vmstate-static-checker.py
xen-detect.c
xml-preprocess-test.py
xml-preprocess.py