[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] Fix COR by disabling BDRV_O_COPY_ON_READ before
From: |
Benoît Canet |
Subject: |
Re: [Qemu-devel] [PATCH] Fix COR by disabling BDRV_O_COPY_ON_READ before opening the backing_file. |
Date: |
Mon, 28 Oct 2013 16:08:10 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Le Friday 25 Oct 2013 à 02:15:07 (+0200), Thibaut LAURENT a écrit :
> Since commit 0ebd24e0a203cf2852c310b59fbe050190dc6c8c,
> bdrv_open_common will throw an error when trying to open a file
> read-only with the BDRV_O_COPY_ON_READ flag set.
> Although BDRV_O_RDWR is unset for the backing files,
> BDRV_O_COPY_ON_READ is still passed on if copy-on-read was requested
> for the drive. Let's unset this flag too before opening the backing
> file, or bdrv_open_common will fail.
>
> Signed-off-by: Thibaut LAURENT <address@hidden>
> ---
> block.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/block.c b/block.c
> index fd05a80..4474012 100644
> --- a/block.c
> +++ b/block.c
> @@ -999,7 +999,8 @@ int bdrv_open_backing_file(BlockDriverState *bs, QDict
> *options, Error **errp)
> }
>
> /* backing files always opened read-only */
> - back_flags = bs->open_flags & ~(BDRV_O_RDWR | BDRV_O_SNAPSHOT);
> + back_flags = bs->open_flags & ~(BDRV_O_RDWR | BDRV_O_SNAPSHOT |
> + BDRV_O_COPY_ON_READ);
>
> ret = bdrv_open(bs->backing_hd,
> *backing_filename ? backing_filename : NULL, options,
> --
> 1.8.4.1
>
>
Reviewed-by: Benoit Canet <address@hidden>