On Fri, Oct 30, 2026 at 02:06:10AM +0100, Denis V. Lunev wrote: > From: Denis V. Lunev <[email protected]> > > zero_bitmap_valid says more than its name: a task created once it is > set skips its own block-status query, the sync=top skipping included, > because the scan has already settled what to copy. And the end of the > scan was announced twice, clearing skip_unallocated and then publishing > zero_bitmap_valid, with an ordering rule in a comment tying the two. > > Rename the flag to scan_done, and let block_copy_set_scan_done() clear > skip_unallocated before publishing it, so backup_scan_source() makes one > call and the order is kept in one place. skip_unallocated is left to > mean that a sync=top scan is in progress. No behavior change. > > Suggested-by: Vladimir Sementsov-Ogievskiy <[email protected]> > Signed-off-by: Denis V. Lunev <[email protected]> > CC: Vladimir Sementsov-Ogievskiy <[email protected]> > CC: John Snow <[email protected]> > CC: Andrey Drobyshev <[email protected]> > --- > block/backup.c | 6 +----- > block/block-copy.c | 19 ++++++++++++------- > include/block/block-copy.h | 2 +- > 3 files changed, 14 insertions(+), 13 deletions(-)
Reviewed-by: Eric Blake <[email protected]> -- Eric Blake, Principal Software Engineer Red Hat, Inc. Virtualization: qemu.org | libguestfs.org
