aboutsummaryrefslogtreecommitdiff
path: root/block/raw-format.c
diff options
context:
space:
mode:
authorMax Reitz <mreitz@redhat.com>2017-06-13 22:20:53 +0200
committerMax Reitz <mreitz@redhat.com>2017-07-11 17:45:01 +0200
commit7ea37c30660d4cd6aca21a324fabefe23b89f931 (patch)
tree897afd4ead51179dfb1473bfa44a92a4de121f1f /block/raw-format.c
parent8243ccb7433e59a3faa3cca27fb6c40d6da2b37c (diff)
downloadqemu-7ea37c30660d4cd6aca21a324fabefe23b89f931.zip
qemu-7ea37c30660d4cd6aca21a324fabefe23b89f931.tar.gz
qemu-7ea37c30660d4cd6aca21a324fabefe23b89f931.tar.bz2
block: Add PreallocMode to bdrv_truncate()
For block drivers that just pass a truncate request to the underlying protocol, we can now pass the preallocation mode instead of aborting if it is not PREALLOC_MODE_OFF. Signed-off-by: Max Reitz <mreitz@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Message-id: 20170613202107.10125-3-mreitz@redhat.com Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'block/raw-format.c')
-rw-r--r--block/raw-format.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/block/raw-format.c b/block/raw-format.c
index 721c9a0..142649e 100644
--- a/block/raw-format.c
+++ b/block/raw-format.c
@@ -357,12 +357,6 @@ static int raw_truncate(BlockDriverState *bs, int64_t offset,
{
BDRVRawState *s = bs->opaque;
- if (prealloc != PREALLOC_MODE_OFF) {
- error_setg(errp, "Unsupported preallocation mode '%s'",
- PreallocMode_lookup[prealloc]);
- return -ENOTSUP;
- }
-
if (s->has_size) {
error_setg(errp, "Cannot resize fixed-size raw disks");
return -ENOTSUP;
@@ -375,7 +369,7 @@ static int raw_truncate(BlockDriverState *bs, int64_t offset,
s->size = offset;
offset += s->offset;
- return bdrv_truncate(bs->file, offset, errp);
+ return bdrv_truncate(bs->file, offset, prealloc, errp);
}
static int raw_media_changed(BlockDriverState *bs)