These are a bunch of cleanups and patches extracted from the AioContext lock removal series. As a general theme, the patches reorganize blockjob.c to follow the blockjob.h/blockjob_int.h separation more closely. For this reason, a lot of the patches are just moving functions around.
The blockjob.h/blockjob_int.h split later will correspond to different locking rules, but the patches are independent from this change, and can be applied/reviewed separately. There is no code change from v1, but all patches now have Reviewed-by from at least one of John and Stefan. Thanks, Paolo Paolo Bonzini (11): blockjob: remove unnecessary check blockjob: remove iostatus_reset callback blockjob: introduce block_job_early_fail blockjob: introduce block_job_pause/resume_all blockjob: separate monitor and blockjob APIs blockjob: move iostatus reset inside block_job_user_resume blockjob: introduce block_job_cancel_async, check iostatus invariants blockjob: group BlockJob transaction functions together blockjob: strengthen a bit test-blockjob-txn blockjob: reorganize block_job_completed_txn_abort blockjob: use deferred_to_main_loop to indicate the coroutine has ended block/backup.c | 2 +- block/commit.c | 2 +- block/io.c | 19 +- block/mirror.c | 2 +- blockdev.c | 1 - blockjob.c | 900 +++++++++++++++++++++++-------------------- include/block/blockjob.h | 16 - include/block/blockjob_int.h | 27 +- tests/test-blockjob-txn.c | 7 +- tests/test-blockjob.c | 10 +- 10 files changed, 522 insertions(+), 464 deletions(-) -- 2.12.2