This is 11th version of patch adding compare subcommand that compares two images. Compare has following criteria: - only data part is compared - unallocated sectors are not read - qemu-img returns: - 0 if images are identical - 1 if images differ - >2 error on execution
v11: - add minor enhancements to qemu-img compare test (patch 4) v10: - rebased to kwolf's block-next branch due to conflict patch (patch 2) - exit status updates (patch 3) - minor non-functional fixes v9: - Merged patch 3 and 4 (subcommmand implementation and documentation) of v8 - Added basic test for qemu-img compare - Fixed incorrect indentation - add bdrv_is_allocated_above() return value check - Add description of exit codes into the documentation - minor non-functional changes v8: - minor grammar fixes (no behavior change) v7: - split patch into pieces - Quiet mode added for all relevant subcommands - check non-shared part of disk after shared one - minor docummentation and naming fixes v6: - added handling -?, -h options for compare subcommand v5 (only minor changes): - removed redundant comment - removed dead code (goto after help()) - set final total_sectors on first assignment v4: - Fixed various typos - Added functions for empty sector check and sector-to-bytes offset conversion - Fixed command-line parameters processing v3: - options -f/-F are orthogonal - documentation updated to new syntax and behavior - used byte offset instead of sector number for output v2: - changed option for second image format to -F - changed handling of -f and -F [1] - added strict mode (-s) - added quiet mode (-q) - improved output messages [2] - rename variables for larger image handling - added man page content Signed-off-by: Miroslav Rezanina <mreza...@redhat.com> Miroslav Rezanina (4): block: Add synchronous wrapper for bdrv_co_is_allocated_above qemu-img: Add "Quiet mode" option qemu-img: Add compare subcommand qemu-iotests: Add qemu-img compare test block.c | 51 +++++- blockdev.c | 6 +- include/block/block.h | 5 +- qemu-img-cmds.hx | 34 ++-- qemu-img.c | 441 +++++++++++++++++++++++++++++++++++++++----- qemu-img.texi | 56 ++++++ tests/qemu-iotests/048 | 78 ++++++++ tests/qemu-iotests/048.out | 31 +++ tests/qemu-iotests/group | 1 + 9 files changed, 633 insertions(+), 70 deletions(-) create mode 100755 tests/qemu-iotests/048 create mode 100644 tests/qemu-iotests/048.out