[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH v7 3/5] block: support passing 'backing': '' to
From: |
Jeff Cody |
Subject: |
Re: [Qemu-block] [PATCH v7 3/5] block: support passing 'backing': '' to 'blockdev-add' |
Date: |
Tue, 13 Oct 2015 18:47:53 -0400 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Mon, Oct 12, 2015 at 12:16:15PM +0300, Alberto Garcia wrote:
> Passing an empty string allows opening an image but not its backing
> file. This was already described in the API documentation, only the
> implementation was missing.
>
> This is useful for creating snapshots using images opened with
> blockdev-add, since they are not supposed to have a backing image
> before the operation.
>
> Signed-off-by: Alberto Garcia <address@hidden>
> Reviewed-by: Max Reitz <address@hidden>
> Reviewed-by: Eric Blake <address@hidden>
> Reviewed-by: Kevin Wolf <address@hidden>
> ---
> block.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/block.c b/block.c
> index c9e3c6c..31d1b6e 100644
> --- a/block.c
> +++ b/block.c
> @@ -1406,6 +1406,7 @@ static int bdrv_open_inherit(BlockDriverState **pbs,
> const char *filename,
> BlockDriverState *file = NULL, *bs;
> BlockDriver *drv = NULL;
> const char *drvname;
> + const char *backing;
> Error *local_err = NULL;
> int snapshot_flags = 0;
>
> @@ -1473,6 +1474,12 @@ static int bdrv_open_inherit(BlockDriverState **pbs,
> const char *filename,
>
> assert(drvname || !(flags & BDRV_O_PROTOCOL));
>
> + backing = qdict_get_try_str(options, "backing");
> + if (backing && *backing == '\0') {
> + flags |= BDRV_O_NO_BACKING;
> + qdict_del(options, "backing");
> + }
> +
> bs->open_flags = flags;
> bs->options = options;
> options = qdict_clone_shallow(options);
> --
> 2.6.1
>
>
Reviewed-by: Jeff Cody <address@hidden>
- [Qemu-block] [PATCH v7 0/5] Add 'blockdev-snapshot' command, Alberto Garcia, 2015/10/12
- [Qemu-block] [PATCH v7 3/5] block: support passing 'backing': '' to 'blockdev-add', Alberto Garcia, 2015/10/12
- Re: [Qemu-block] [PATCH v7 3/5] block: support passing 'backing': '' to 'blockdev-add',
Jeff Cody <=
- [Qemu-block] [PATCH v7 1/5] block: check for existing device IDs in external_snapshot_prepare(), Alberto Garcia, 2015/10/12
- [Qemu-block] [PATCH v7 4/5] block: add a 'blockdev-snapshot' QMP command, Alberto Garcia, 2015/10/12
- [Qemu-block] [PATCH v7 5/5] block: add tests for the 'blockdev-snapshot' command, Alberto Garcia, 2015/10/12
- [Qemu-block] [PATCH v7 2/5] block: rename BlockdevSnapshot to BlockdevSnapshotSync, Alberto Garcia, 2015/10/15