The following changes since commit 4907644841e3200aea6475c0f72d3d987e9f3d93:
Merge tag 'mem-2023-09-19' of https://github.com/davidhildenbrand/qemu into staging (2023-09-19 13:22:19 -0400) are available in the Git repository at: https://src.openvz.org/scm/~den/qemu.git tags/pull-parallels-2023-09-20-v2 for you to fetch changes up to 1dba99e34d1bcb3c0de69c4270f9587b01e225fe: tests: extend test 131 to cover availability of the write-zeroes (2023-09-21 08:49:28 +0200) ---------------------------------------------------------------- Parallels format driver: * regular calculation of cluster used bitmap of the image file * cluster allocation on the base of that bitmap (effectively allocation of new clusters could be done inside the image if that offset space is unused) * support of DISCARD and WRITE_ZEROES operations * image check bugfixes * unit tests fixes * unit tests covering new functionality ---------------------------------------------------------------- Changes from v1: * patch 12: bdrv_co_getlength -> bdrv_getlength in parallels_fill_used_bitmap as called from open() * patch 19: added GRAPH_RDLOCK specifier for parallels_co_pdiscard * patch 21: added GRAPH_RDLOCK specifier for parallels_co_pwrite_zeroes ---------------------------------------------------------------- Denis V. Lunev (22): parallels: fix formatting in bdrv_parallels initialization parallels: mark driver as supporting CBT parallels: fix memory leak in parallels_open() parallels: invent parallels_opts_prealloc() helper to parse prealloc opts parallels: return earler in fail_format branch in parallels_open() parallels: return earlier from parallels_open() function on error parallels: refactor path when we need to re-check image in parallels_open parallels: create mark_used() helper which sets bit in used bitmap tests: ensure that image validation will not cure the corruption parallels: fix broken parallels_check_data_off() parallels: add test which will validate data_off fixes through repair parallels: collect bitmap of used clusters at open tests: fix broken deduplication check in parallels format test tests: test self-cure of parallels image with duplicated clusters parallels: accept multiple clusters in mark_used() parallels: update used bitmap in allocate_cluster parallels: naive implementation of allocate_clusters with used bitmap parallels: improve readability of allocate_clusters parallels: naive implementation of parallels_co_pdiscard tests: extend test 131 to cover availability of the discard operation parallels: naive implementation of parallels_co_pwrite_zeroes tests: extend test 131 to cover availability of the write-zeroes block/parallels.c | 389 ++++++++++++++++++++------ block/parallels.h | 3 + tests/qemu-iotests/131 | 52 ++++ tests/qemu-iotests/131.out | 60 ++++ tests/qemu-iotests/tests/parallels-checks | 76 ++++- tests/qemu-iotests/tests/parallels-checks.out | 65 ++++- 6 files changed, 544 insertions(+), 101 deletions(-) -- 2.34.1