On 5/20/25 1:30 PM, Fiona Ebner wrote:
> bdrv_drained_begin() polls and is not allowed to be called with the
> block graph lock held. Mark the function as such.
> 
> Suggested-by: Kevin Wolf <kw...@redhat.com>
> Signed-off-by: Fiona Ebner <f.eb...@proxmox.com>
> ---
> 
> No changes in v2, but ordered differently (in particular, it avoids
> the need for patch 04/11 from last time).
> 
>  include/block/block-io.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/include/block/block-io.h b/include/block/block-io.h
> index b99cc98d26..4cf83fb367 100644
> --- a/include/block/block-io.h
> +++ b/include/block/block-io.h
> @@ -431,7 +431,7 @@ bdrv_drain_poll(BlockDriverState *bs, BdrvChild 
> *ignore_parent,
>   *
>   * This function can be recursive.
>   */
> -void bdrv_drained_begin(BlockDriverState *bs);
> +void GRAPH_UNLOCKED bdrv_drained_begin(BlockDriverState *bs);
>  
>  /**
>   * bdrv_do_drained_begin_quiesce:

Again, for readability we might as well add the GRAPH_UNLOCKED mark to
the definition in block/io.c.

Andrey

Reply via email to