qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 1/2] block-backend: add drained_poll


From: Kevin Wolf
Subject: Re: [PATCH 1/2] block-backend: add drained_poll
Date: Tue, 1 Jun 2021 17:59:10 +0200

Am 01.06.2021 um 07:57 hat Sergio Lopez geschrieben:
> Allow block backends to poll their devices/users to check if they have
> been quiesced when entering a drained section.
> 
> This will be used in the next patch to wait for the NBD server to be
> completely quiesced.
> 
> Suggested-by: Kevin Wolf <kwolf@redhat.com>
> Signed-off-by: Sergio Lopez <slp@redhat.com>
> ---
>  block/block-backend.c          | 7 ++++++-
>  include/sysemu/block-backend.h | 4 ++++
>  2 files changed, 10 insertions(+), 1 deletion(-)
> 
> diff --git a/block/block-backend.c b/block/block-backend.c
> index de5496af66..163ca05b97 100644
> --- a/block/block-backend.c
> +++ b/block/block-backend.c
> @@ -2393,8 +2393,13 @@ static void blk_root_drained_begin(BdrvChild *child)
>  static bool blk_root_drained_poll(BdrvChild *child)
>  {
>      BlockBackend *blk = child->opaque;
> +    int ret = 0;

It's really a bool.

>      assert(blk->quiesce_counter);
> -    return !!blk->in_flight;
> +
> +    if (blk->dev_ops && blk->dev_ops->drained_poll) {
> +        ret = blk->dev_ops->drained_poll(blk->dev_opaque);
> +    }
> +    return ret || !!blk->in_flight;
>  }

Doesn't make a difference for correctness, of course, so whether you
change it or not:

Reviewed-by: Kevin Wolf <kwolf@redhat.com>




reply via email to

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