qemu-block
[Top][All Lists]
Advanced

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

Re: [Qemu-block] [PATCH v2 11/17] block-backend: Decrease in_flight only


From: Paolo Bonzini
Subject: Re: [Qemu-block] [PATCH v2 11/17] block-backend: Decrease in_flight only after callback
Date: Tue, 18 Sep 2018 16:12:36 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1

On 18/09/2018 13:34, Kevin Wolf wrote:
>> But then basically the main issue is mirror.c's call to
>> bdrv_drained_begin/end.  There are no other calls to
>> bdrv_drained_begin/end inside coroutines IIRC.
>
> Coroutine or not doesn't matter. What matters is that you drain inside
> some (high-level) operation that already needs to be completed itself
> for drain to return.

Indeed.  However, are there any calls to bdrv_drained_begin/end that are
inside inc_in_flight/dec_in_flight, and are not inside coroutines?
(Sorry if I don't see the high-level issue, I'm more familiar with the
low-level functioning...).

It seems to me that if we fixed the mirror bdrv_(co_)drained_begin case,
then it would be good enough.

Paolo

> This is the case for any block job completions that
> make changes to the graph (which means everything except backup).




reply via email to

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