[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH 2/2] block-stream: include base into job node li
From: |
Alberto Garcia |
Subject: |
Re: [Qemu-block] [PATCH 2/2] block-stream: include base into job node list |
Date: |
Tue, 26 Feb 2019 14:33:25 +0100 |
User-agent: |
Notmuch/0.18.2 (http://notmuchmail.org) Emacs/24.4.1 (i586-pc-linux-gnu) |
On Mon 25 Feb 2019 05:39:14 PM CET, Vladimir Sementsov-Ogievskiy wrote:
>> --- a/block/stream.c
>> +++ b/block/stream.c
>> @@ -259,6 +259,15 @@ void stream_start(const char *job_id, BlockDriverState
>> *bs,
>> &error_abort);
>> }
>>
>> + if (base) {
>> + /*
>> + * The base node should not disappear during the job.
>> + */
>> + block_job_add_bdrv(&s->common, "base", base, 0,
>> + BLK_PERM_ALL & ~BLK_PERM_GRAPH_MOD,
>> + &error_abort);
>> + }
>> +
>> s->base = base;
>> s->backing_file_str = g_strdup(backing_file_str);
>> s->bs_read_only = bs_read_only;
>>
>
>
> Hmm, intersting, is BLK_PERM_GRAPH_MOD a good way to lock relations in
> node graph?
>
> bdrv_replace_node don't check this permission. So, I don't understand,
> how this permission works.. Graph modification operation in difference
> with read or write are not done through BdrvChild at all.
>
> Are there any ideas or work started for some another mechanism of
> "freezing" a subgraph during an operation?
See this discussion:
https://lists.gnu.org/archive/html/qemu-block/2018-11/msg00387.html
And these patches (currently under review):
https://lists.gnu.org/archive/html/qemu-block/2019-01/msg00622.html
Berto