10.09.2019 13:23, Vladimir Sementsov-Ogievskiy wrote: > Hi all! > > These series introduce backup-top driver. It's a filter-node, which > do copy-before-write operation. Mirror uses filter-node for handling > guest writes, let's move to filter-node (from write-notifiers) for > backup too. > > v11: based on Kevin's block branch
Now based on master > > 02,03: Add Max's r-b > 04: - improve comments > - rebase on dropped backup_drain > - s/job/bcs/ in trace events > 05: one hunk dropped due to rebasing > on dropped backup_drain, still, > keep Max's r-b > 06: rebased on 04 changes, keep Max's r-b > 08,13,14: add Max's r-b > > Based-on: git://repo.or.cz/qemu/kevin.git block > > Vladimir Sementsov-Ogievskiy (14): > block/backup: fix backup_cow_with_offload for last cluster > block/backup: split shareable copying part from backup_do_cow > block/backup: improve comment about image fleecing > block/backup: introduce BlockCopyState > block/backup: fix block-comment style > block: move block_copy from block/backup.c to separate file > block: teach bdrv_debug_breakpoint skip filters with backing > iotests: prepare 124 and 257 bitmap querying for backup-top filter > iotests: 257: drop unused Drive.device field > iotests: 257: drop device_add > block/io: refactor wait_serialising_requests > block: add lock/unlock range functions > block: introduce backup-top filter driver > block/backup: use backup-top instead of write notifiers > > qapi/block-core.json | 8 +- > block/backup-top.h | 37 ++ > include/block/block-copy.h | 84 ++++ > include/block/block_int.h | 5 + > block.c | 34 +- > block/backup-top.c | 240 ++++++++++++ > block/backup.c | 440 ++++----------------- > block/block-copy.c | 337 ++++++++++++++++ > block/io.c | 68 +++- > block/replication.c | 2 +- > blockdev.c | 1 + > block/Makefile.objs | 3 + > block/trace-events | 14 +- > tests/qemu-iotests/056 | 8 +- > tests/qemu-iotests/124 | 83 ++-- > tests/qemu-iotests/257 | 91 ++--- > tests/qemu-iotests/257.out | 714 ++++++++++++++-------------------- > tests/qemu-iotests/iotests.py | 27 ++ > 18 files changed, 1278 insertions(+), 918 deletions(-) > create mode 100644 block/backup-top.h > create mode 100644 include/block/block-copy.h > create mode 100644 block/backup-top.c > create mode 100644 block/block-copy.c > -- Best regards, Vladimir