[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v4 7/7] block: Allow backup on referenced named
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH v4 7/7] block: Allow backup on referenced named BlockDriverState |
Date: |
Mon, 25 Nov 2013 12:23:19 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Am 22.11.2013 um 06:24 hat Fam Zheng geschrieben:
> Drive backup is a read only operation on source bs. We want to allow
> this specific case to enable image-fleecing. Note that when
> image-fleecing job starts, the job still add its blocker to source bs,
> and any other operation on it will be blocked by that.
>
> Signed-off-by: Fam Zheng <address@hidden>
> ---
> block.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/block.c b/block.c
> index a5da656..d30be51 100644
> --- a/block.c
> +++ b/block.c
> @@ -1179,6 +1179,8 @@ int bdrv_open(BlockDriverState *bs, const char
> *filename, QDict *options,
> "device is used as backing hd of '%s'",
> bs->device_name);
> bdrv_op_block_all(bs->backing_hd, bs->backing_blocker);
> + bdrv_op_unblock(bs->backing_hd, BLOCK_OP_TYPE_BACKUP,
> + bs->backing_blocker);
> pstrcpy(bs->backing_file, sizeof(bs->backing_file),
> bs->backing_hd->filename);
> pstrcpy(bs->backing_format, sizeof(bs->backing_format),
We probably need separate blockers for "can be a backup source" and "can
be a backup target". Because I think this allows using it as a
read-write target as well, which was not intended.
Do we need to cover this in other parts of the code as well, like when
adding a new BDS during external snapshot creation?
Kevin