diff options
author | Kevin Wolf <kwolf@redhat.com> | 2013-11-28 11:58:02 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2013-11-29 17:41:09 +0100 |
commit | c9fbb99d41b05acf0d7b93deb2fcdbf9047c238e (patch) | |
tree | d69b04e2510ced9bc17efaa992ec78b79ab38280 /block | |
parent | f32f988c7778d0f1ff9c7e8d7547a354a7fdd3f6 (diff) |
block: Use BDRV_O_NO_BACKING where appropriate
If you open an image temporarily just because you want to check its size
or get it flushed, there's no real reason to open the whole backing file
chain.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Fam Zheng <famz@redhat.com>
Reviewed-by: Benoit Canet <benoit@irqsave.net>
Diffstat (limited to 'block')
-rw-r--r-- | block/qcow2.c | 3 | ||||
-rw-r--r-- | block/vmdk.c | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/block/qcow2.c b/block/qcow2.c index 2fe37ed6cb..8e2b6c7548 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -1588,7 +1588,8 @@ static int qcow2_create2(const char *filename, int64_t total_size, /* Reopen the image without BDRV_O_NO_FLUSH to flush it before returning */ ret = bdrv_open(bs, filename, NULL, - BDRV_O_RDWR | BDRV_O_CACHE_WB, drv, &local_err); + BDRV_O_RDWR | BDRV_O_CACHE_WB | BDRV_O_NO_BACKING, + drv, &local_err); if (error_is_set(&local_err)) { error_propagate(errp, local_err); goto out; diff --git a/block/vmdk.c b/block/vmdk.c index 6555663a7e..5fb6c813ef 100644 --- a/block/vmdk.c +++ b/block/vmdk.c @@ -1690,7 +1690,7 @@ static int vmdk_create(const char *filename, QEMUOptionParameter *options, } if (backing_file) { BlockDriverState *bs = bdrv_new(""); - ret = bdrv_open(bs, backing_file, NULL, 0, NULL, errp); + ret = bdrv_open(bs, backing_file, NULL, BDRV_O_NO_BACKING, NULL, errp); if (ret != 0) { bdrv_unref(bs); return ret; |