]> git.proxmox.com Git - mirror_qemu.git/commit - block/qcow2-cluster.c
qcow2: Support BDRV_REQ_ZERO_WRITE for truncate
authorKevin Wolf <kwolf@redhat.com>
Fri, 24 Apr 2020 12:54:42 +0000 (14:54 +0200)
committerKevin Wolf <kwolf@redhat.com>
Thu, 30 Apr 2020 15:51:07 +0000 (17:51 +0200)
commitf01643fb8b47e8a70c04bbf45e0f12a9e5bc54de
tree446a67520b49b8cde4e1fa8905af815cb107d462
parent8c6242b6f383e43fd11d2c50f8bcdd2bba1100fc
qcow2: Support BDRV_REQ_ZERO_WRITE for truncate

If BDRV_REQ_ZERO_WRITE is set and we're extending the image, calling
qcow2_cluster_zeroize() with flags=0 does the right thing: It doesn't
undo any previous preallocation, but just adds the zero flag to all
relevant L2 entries. If an external data file is in use, a write_zeroes
request to the data file is made instead.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-Id: <20200424125448.63318-5-kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block/qcow2-cluster.c
block/qcow2.c