On 17.06.20 16:00, Alberto Garcia wrote: > When resizing an image with qcow2_co_truncate() using the falloc or > full preallocation modes the code assumes that both the old and new > sizes are cluster-aligned. > > There are two problems with this: > > 1) The calculation of how many clusters are involved does not always > get the right result. > > Example: creating a 60KB image and resizing it (with > preallocation=full) to 80KB won't allocate the second cluster. > > 2) No copy-on-write is performed, so in the previous example if > there is a backing file then the first 60KB of the first cluster > won't be filled with data from the backing file. > > This patch fixes both issues. > > Signed-off-by: Alberto Garcia <be...@igalia.com> > --- > v2: iotests: don't check the image size if data_file is set [Max] > > block/qcow2.c | 17 ++++++++++++++--- > tests/qemu-iotests/125 | 24 ++++++++++++++++++++++++ > tests/qemu-iotests/125.out | 9 +++++++++ > 3 files changed, 47 insertions(+), 3 deletions(-)
Thanks, applied to my block branch: https://git.xanclic.moe/XanClic/qemu/commits/branch/block
signature.asc
Description: OpenPGP digital signature