On Tue, May 20, 2025 at 12:30:12PM +0200, Fiona Ebner wrote: > Many write-lockded sections are also drained sections. A new
write-locked > bdrv_graph_wrunlock_drained() wrapper around bdrv_graph_wrunlock() is > introduced, which will begin a drained section first. A global > variable is used so bdrv_graph_wrunlock() knows if it also needs > to end such a drained section. Both the aio_poll call in > bdrv_graph_wrlock() and the aio_bh_poll() in bdrv_graph_wrunlock() > can re-enter a write-locked section. While for the latter, ending the > drain could be moved to before the call, the former requires that the > variable is a counter and not just a boolean. > -- Eric Blake, Principal Software Engineer Red Hat, Inc. Virtualization: qemu.org | libguestfs.org