v2: https://lists.nongnu.org/archive/html/qemu-devel/2024-05/msg02396.html
v2 -> v3: * Added patch 12/12 "qcow2: add discard-subclusters option" which makes subcluster-based discards optional; * Added a bunch of R-b's. Andrey Drobyshev (12): qcow2: make function update_refcount_discard() global qcow2: simplify L2 entries accounting for discard-no-unref qcow2: put discard requests in the common queue when discard-no-unref enabled block/file-posix: add trace event for fallocate() calls iotests/common.rc: add disk_usage function iotests/290: add test case to check 'discard-no-unref' option behavior qcow2: add get_sc_range_info() helper for working with subcluster ranges qcow2: zeroize the entire cluster when there're no non-zero subclusters qcow2: make subclusters discardable qcow2: zero_l2_subclusters: fall through to discard operation when requested iotests/271: add test cases for subcluster-based discard/unmap qcow2: add discard-subclusters option block/file-posix.c | 1 + block/qcow2-cluster.c | 346 ++++++++++++++++++++++++++++------- block/qcow2-refcount.c | 8 +- block/qcow2-snapshot.c | 6 +- block/qcow2.c | 44 +++-- block/qcow2.h | 8 +- block/trace-events | 1 + tests/qemu-iotests/250 | 5 - tests/qemu-iotests/271 | 74 ++++++-- tests/qemu-iotests/271.out | 69 ++++++- tests/qemu-iotests/290 | 34 ++++ tests/qemu-iotests/290.out | 28 +++ tests/qemu-iotests/common.rc | 6 + 13 files changed, 513 insertions(+), 117 deletions(-) -- 2.39.3