[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PULL 16/31] block: Fix open_flags in bdrv_reopen()
From: |
Jan Kiszka |
Subject: |
Re: [Qemu-devel] [PULL 16/31] block: Fix open_flags in bdrv_reopen() |
Date: |
Sun, 04 May 2014 12:13:23 +0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 |
On 2014-04-30 20:23, Kevin Wolf wrote:
> Use the same function as bdrv_open() for determining what the right
> flags for bs->file are. Without doing this, a reopen means that
> bs->file loses BDRV_O_CACHE_WB or BDRV_O_UNMAP if bs doesn't have it as
> well.
>
> Signed-off-by: Kevin Wolf <address@hidden>
> Reviewed-by: Max Reitz <address@hidden>
> ---
> block.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/block.c b/block.c
> index 9f6f07e..b749d31 100644
> --- a/block.c
> +++ b/block.c
> @@ -1525,8 +1525,11 @@ BlockReopenQueue *bdrv_reopen_queue(BlockReopenQueue
> *bs_queue,
> QSIMPLEQ_INIT(bs_queue);
> }
>
> + /* bdrv_open() masks this flag out */
> + flags &= ~BDRV_O_PROTOCOL;
> +
> if (bs->file) {
> - bdrv_reopen_queue(bs_queue, bs->file, flags);
> + bdrv_reopen_queue(bs_queue, bs->file, bdrv_inherited_flags(flags));
> }
>
> bs_entry = g_new0(BlockReopenQueueEntry, 1);
>
This breaks the "commit" monitor command for disks in snapshot mode.
Returned error is "no permission" (I assume -EPERM).
Jan
signature.asc
Description: OpenPGP digital signature
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Qemu-devel] [PULL 16/31] block: Fix open_flags in bdrv_reopen(),
Jan Kiszka <=