Patches 1/4 and 2/4 are tangentially related. See patches 3/4 and 4/4 for the details.
I did not CC the people for the individual block drivers. Let me know if I should! Fiona Ebner (4): block/graph-lock: fix typo in comment block-coroutine-wrapper: mark generated co-wrapper as GRAPH_UNLOCKED block: make calling bdrv_refresh_limits() safe while holding graph lock iotests: add test for snapshot on top of node with compress filter block.c | 14 ++++++++++---- block/blkio.c | 5 ++--- block/crypto.c | 8 ++++---- block/file-posix.c | 7 +++---- block/io.c | 4 ++-- block/iscsi.c | 7 +++---- block/mirror.c | 5 +++-- block/monitor/bitmap-qmp-cmds.c | 2 ++ block/qcow.c | 5 ++--- block/qcow2.c | 5 ++--- block/qed.c | 5 ++--- block/raw-format.c | 7 +++---- block/rbd.c | 5 ++--- block/vdi.c | 11 ++++++----- block/vhdx.c | 5 ++--- block/vmdk.c | 5 ++--- block/vpc.c | 5 ++--- hw/nvme/ns.c | 2 +- include/block/block-io.h | 9 +++++---- include/block/block_int-common.h | 4 ++-- include/block/dirty-bitmap.h | 2 +- include/block/graph-lock.h | 2 +- qemu-img.c | 6 ++++++ scripts/block-coroutine-wrapper.py | 2 +- tests/qemu-iotests/085 | 18 ++++++++++++++++++ tests/qemu-iotests/085.out | 21 +++++++++++++++++++++ 26 files changed, 108 insertions(+), 63 deletions(-) -- 2.39.5