[Devel] [PATCH hci-8.1 v3 0/3] dm-qcow2: truncate unused tail of image on suspend
Denis V. Lunev
den at virtuozzo.com
Thu Oct 8 13:59:05 MSK 2026
On 10/8/26 12:04, Alexander Ivanov wrote:
> On postsuspend dm-qcow2 truncates the image file only down to
> file_preallocated_area_start, so clusters at the end of the file freed
> by discard are never given back and the file never shrinks.
>
> This series makes postsuspend scan the refcount blocks backward and
> truncate the file to the end of the last used cluster.
>
> Patch 1 adds qcow2_md_page_read_sync() helper, which is needed by the
> scan. Patch 2 is a small cleanup of duplicate prefixes in QC_ERR/QC_INFO
> messages. Patch 3 does the actual truncation.
>
> https://virtuozzo.atlassian.net/browse/VSTOR-148171
>
> v3:
> - Split from the common series with dm-ploop: dm-ploop patches are
> sent as a separate series.
> - Patch 1: rename qcow2_get_md_page_sync() to qcow2_md_page_read_sync(),
> reword commit message and comment.
> - Patch 2: new patch.
> - Patch 3: start the scan from file_preallocated_area_start instead of
> the end of the file and clamp the result to it, as the last cluster
> may be partial; print the scan error with %pe and drop the duplicate
> "dm-qcow2:" prefix from it.
>
> v2:
> - Add dm-ploop support (patches 3-6), as requested in v1 review.
> - dm-qcow2: move get_md_page_sync() to a separate patch as
> qcow2_md_page_read_sync() and use it in qcow2_parse_header() as well.
> - dm-qcow2: start the refcount scan below file_preallocated_area_start
> instead of the end of the file, and truncate to the used end directly
> instead of min(file_preallocated_area_start, used end).
>
> Alexander Ivanov (3):
> dm-qcow2: add qcow2_md_page_read_sync() helper
> dm-qcow2: drop duplicate prefix from QC_ERR/QC_INFO messages
> dm-qcow2: truncate unused tail of image on suspend
>
> drivers/md/dm-qcow2-map.c | 56 ++++++++++++++++++++++++++
> drivers/md/dm-qcow2-target.c | 78 ++++++++++++++++++++++++++----------
> drivers/md/dm-qcow2.h | 3 ++
> 3 files changed, 116 insertions(+), 21 deletions(-)
>
with 2 nits in comments
Reviewed-by: Denis V. Lunev <den at openvz.org>
More information about the Devel
mailing list