Hi all! There are some fixes and refactorings I need on my way to resend my backup-top series. It's obvious now that I need to share copying code between backup and backup-top, as backup copying code becomes smarter and more complicated. So the goal of the series is to make copying code more share-able.
Based-on: https://github.com/jnsnow/qemu bitmaps v3: 03: Ha, fix real bug, we shouldn't touch src before handling write-zero, as src may be NULL. So, replace align and max_transfer calculation together with max_transfer == 0 check. Drop comment, as there is no special place for it now.. 04: add Max's r-b: 06-07: rewrite to keep bounce_buffer sharing between iterations and to limit allocation [Eric] v2 (by Max's comments): 02: Add Max's r-b 03: - split out backup changes to 03 - handle common max_transfer = 0 case 04: splat out from 02 06: fix allocation size 07: - rebase on 06 changes - add Max's r-b two patches are dropped or postponed for the next step Vladimir Sementsov-Ogievskiy (7): block/backup: deal with zero detection block/backup: refactor write_flags block/io: handle alignment and max_transfer for copy_range block/backup: drop handling of max_transfer for copy_range block/backup: fix backup_cow_with_offload for last cluster block/backup: teach backup_cow_with_bounce_buffer to copy more at once block/backup: merge duplicated logic into backup_do_cow block/backup.c | 154 ++++++++++++++++++++++--------------------------- block/io.c | 44 +++++++++++--- blockdev.c | 8 +-- 3 files changed, 110 insertions(+), 96 deletions(-) -- 2.18.0