qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-block] [Qemu-devel] [PATCH 11/34] block: Allow references for


From: Wen Congyang
Subject: Re: [Qemu-block] [Qemu-devel] [PATCH 11/34] block: Allow references for backing files
Date: Thu, 28 May 2015 17:58:03 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0

On 05/28/2015 05:48 PM, Kevin Wolf wrote:
> Am 28.05.2015 um 02:59 hat Wen Congyang geschrieben:
>> On 05/27/2015 08:31 PM, Kevin Wolf wrote:
>>> Am 21.05.2015 um 07:47 hat Wen Congyang geschrieben:
>>>> On 05/09/2015 01:21 AM, Kevin Wolf wrote:
>>>>> For bs->file, using references to existing BDSes has been possible for a
>>>>> while already. This patch enables the same for bs->backing_hd.
>>>>
>>>> 1. We reference to an existing BDSes, and some disk uses this blk. Do
>>>> we allow this?
>>>
>>> Currently yes. If it breaks, you get to keep both pieces.
>>>
>>> As long as your guest device is read-only, it should just work. It would
>>> be a very bad idea, though, to write to a backing file.
>>>
>>> Op blockers should eventually prevent this from happening (Jeff, you may
>>> want to take a note ;-))
>>>
>>>> 2. bs->backing_hd->blk can be not NULL now? If we do an active commit
>>>> to this backing file(use mirror job), we will call bdrv_swap() in
>>>> mirror_exit(), and the function bdrv_swap() doesn't allow that
>>>> new_bs->blk(here is bs->backing_hd) is not NULL.
>>>
>>> You're right.
>>>
>>> I can remove this patch from the series for now, but of course that
>>> doesn't solve the problem. I'm not sure what to do about it. Making
>>> bdrv_swap() work with BDSes that have BB attached is probably another
>>> item in the list of "dynamic reconfiguration" problems.
>>
>> What does "dynamic reconfiguration" mean? Allow to change drive's option
>> when guest is running?
> 
> Sorry, I should have been more specific for those of you who haven't
> been part of previous discussions.
> 
> In this context, I'm talking about dynamic reconfiguration of the
> BlockDriverState graph, i.e. any operation that changes the relationship
> between different BDSes (essentially add/remove/change pointers to other
> BDSes).
> 
> An example for that is changing the backing file of an opened image
> after having merged external snapshots with block-commit, or inserting a
> new active layer for taking a live snapshot.

Thanks for your explanation. I understand it now.

Wen Congyang

> 
> Kevin
> .
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]