diff options
| author | Fiona Ebner <f.ebner@proxmox.com> | 2025-05-30 17:11:12 +0200 |
|---|---|---|
| committer | Kevin Wolf <kwolf@redhat.com> | 2025-07-14 15:42:07 +0200 |
| commit | e2d9cc57905eaabd2b212de2f77993935a7fc271 (patch) | |
| tree | 80eeeaeee143a5ce11d0dbbcfacbdae842f8d469 /include | |
| parent | 6717dc307523c9e57b0d6c7dd302eab764c19265 (diff) | |
| download | focaccia-qemu-e2d9cc57905eaabd2b212de2f77993935a7fc271.tar.gz focaccia-qemu-e2d9cc57905eaabd2b212de2f77993935a7fc271.zip | |
block: mark bdrv_inactivate() as GRAPH_RDLOCK and move drain to callers
The function bdrv_inactivate() calls bdrv_drain_all_begin(), which needs to be called with the graph unlocked, so either bdrv_inactivate() should be marked as GRAPH_UNLOCKED or the drain needs to be moved to the callers. The caller in qmp_blockdev_set_active() requires that the locked section covers bdrv_find_node() too, so the latter alternative is chosen. Signed-off-by: Fiona Ebner <f.ebner@proxmox.com> Message-ID: <20250530151125.955508-36-f.ebner@proxmox.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'include')
| -rw-r--r-- | include/block/block-global-state.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/block/block-global-state.h b/include/block/block-global-state.h index f25c65c1b4..a641beb270 100644 --- a/include/block/block-global-state.h +++ b/include/block/block-global-state.h @@ -183,7 +183,7 @@ bdrv_activate(BlockDriverState *bs, Error **errp); int coroutine_fn no_co_wrapper_bdrv_rdlock bdrv_co_activate(BlockDriverState *bs, Error **errp); -int no_coroutine_fn +int no_coroutine_fn GRAPH_RDLOCK bdrv_inactivate(BlockDriverState *bs, Error **errp); void bdrv_activate_all(Error **errp); |