The following changes since commit f1d33f55c47dfdaf8daacd618588ad3ae4c452d1:
Merge tag 'pull-testing-gdbstub-plugins-gitdm-061022-3' of https://github.com/stsquad/qemu into staging (2022-10-06 07:11:56 -0400) are available in the Git repository at: git://repo.or.cz/qemu/kevin.git tags/for-upstream for you to fetch changes up to a7ca2eb488ff149c898f43abe103f8bd8e3ca3c4: file-posix: Remove unused s->discard_zeroes (2022-10-07 12:11:41 +0200) ---------------------------------------------------------------- Block layer patches - job: replace AioContext lock with job_mutex - Fixes to make coroutine_fn annotations more accurate - QAPI schema: Fix incorrect example - Code cleanup ---------------------------------------------------------------- Alberto Faria (1): coroutine: Drop coroutine_fn annotation from qemu_coroutine_self() Emanuele Giuseppe Esposito (20): job.c: make job_mutex and job_lock/unlock() public job.h: categorize fields in struct Job job.c: API functions not used outside should be static aio-wait.h: introduce AIO_WAIT_WHILE_UNLOCKED job.c: add job_lock/unlock while keeping job.h intact job: move and update comments from blockjob.c blockjob: introduce block_job _locked() APIs jobs: add job lock in find_* functions jobs: use job locks also in the unit tests block/mirror.c: use of job helpers in drivers jobs: group together API calls under the same job lock jobs: protect job.aio_context with BQL and job_mutex blockjob.h: categorize fields in struct BlockJob blockjob: rename notifier callbacks as _locked blockjob: protect iostatus field in BlockJob struct job.h: categorize JobDriver callbacks that need the AioContext lock job.c: enable job lock/unlock and remove Aiocontext locks block_job_query: remove atomic read blockjob: remove unused functions job: remove unused functions Kevin Wolf (2): quorum: Remove unnecessary forward declaration file-posix: Remove unused s->discard_zeroes Marc-André Lureau (3): 9p: add missing coroutine_fn annotations migration: add missing coroutine_fn annotations test-coroutine: add missing coroutine_fn annotations Markus Armbruster (1): Revert "qapi: fix examples of blockdev-add with qcow2" Paolo Bonzini (23): block/nvme: separate nvme_get_free_req cases for coroutine/non-coroutine context block: add missing coroutine_fn annotations qcow2: remove incorrect coroutine_fn annotations nbd: remove incorrect coroutine_fn annotations coroutine: remove incorrect coroutine_fn annotations blkverify: add missing coroutine_fn annotations file-posix: add missing coroutine_fn annotations iscsi: add missing coroutine_fn annotations nbd: add missing coroutine_fn annotations nfs: add missing coroutine_fn annotations nvme: add missing coroutine_fn annotations parallels: add missing coroutine_fn annotations qcow2: add missing coroutine_fn annotations copy-before-write: add missing coroutine_fn annotations curl: add missing coroutine_fn annotations qed: add missing coroutine_fn annotations quorum: add missing coroutine_fn annotations throttle: add missing coroutine_fn annotations vmdk: add missing coroutine_fn annotations job: add missing coroutine_fn annotations coroutine-lock: add missing coroutine_fn annotations raw-format: add missing coroutine_fn annotations job: detect change of aiocontext within job coroutine qapi/block-core.json | 10 +- block/qcow2.h | 19 +- hw/9pfs/9p.h | 9 +- include/block/aio-wait.h | 17 +- include/block/blockjob.h | 59 +++- include/block/nbd.h | 2 +- include/qemu/coroutine.h | 4 +- include/qemu/job.h | 306 +++++++++++++----- block.c | 24 +- block/blkverify.c | 2 +- block/block-backend.c | 10 +- block/copy-before-write.c | 9 +- block/curl.c | 2 +- block/file-posix.c | 11 +- block/io.c | 22 +- block/iscsi.c | 3 +- block/mirror.c | 19 +- block/nbd.c | 11 +- block/nfs.c | 2 +- block/nvme.c | 54 ++-- block/parallels.c | 5 +- block/qcow2-cluster.c | 21 +- block/qcow2-refcount.c | 6 +- block/qcow2.c | 5 +- block/qed.c | 4 +- block/quorum.c | 38 +-- block/raw-format.c | 3 +- block/replication.c | 3 + block/throttle.c | 2 +- block/vmdk.c | 22 +- blockdev.c | 129 ++++---- blockjob.c | 132 ++++---- job-qmp.c | 92 +++--- job.c | 674 +++++++++++++++++++++++++-------------- migration/migration.c | 3 +- monitor/qmp-cmds.c | 7 +- qemu-img.c | 17 +- tests/unit/test-bdrv-drain.c | 80 +++-- tests/unit/test-block-iothread.c | 8 +- tests/unit/test-blockjob-txn.c | 24 +- tests/unit/test-blockjob.c | 136 ++++---- tests/unit/test-coroutine.c | 2 +- util/qemu-coroutine-lock.c | 14 +- util/qemu-coroutine.c | 2 +- 44 files changed, 1237 insertions(+), 787 deletions(-)