diff options
| author | Kevin Wolf <kwolf@redhat.com> | 2023-10-27 17:53:25 +0200 |
|---|---|---|
| committer | Kevin Wolf <kwolf@redhat.com> | 2023-11-07 19:14:20 +0100 |
| commit | ccd6a37947574707613e826e2bf04d55f1d5f238 (patch) | |
| tree | a9ddb512aea0f2e3d5c233638f720e907350686f /include | |
| parent | 5c0ef4954f4cd8131df27f5f8cebe3ec215d64b3 (diff) | |
| download | focaccia-qemu-ccd6a37947574707613e826e2bf04d55f1d5f238.tar.gz focaccia-qemu-ccd6a37947574707613e826e2bf04d55f1d5f238.zip | |
block: Mark bdrv_replace_node() GRAPH_WRLOCK
Instead of taking the writer lock internally, require callers to already hold it when calling bdrv_replace_node(). Its callers may already want to hold the graph lock and so wouldn't be able to call functions that take it internally. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Message-ID: <20231027155333.420094-17-kwolf@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'include')
| -rw-r--r-- | include/block/block-global-state.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/include/block/block-global-state.h b/include/block/block-global-state.h index a1fd70ec97..9e0ccc1c32 100644 --- a/include/block/block-global-state.h +++ b/include/block/block-global-state.h @@ -71,8 +71,10 @@ bdrv_co_create_file(const char *filename, QemuOpts *opts, Error **errp); BlockDriverState *bdrv_new(void); int bdrv_append(BlockDriverState *bs_new, BlockDriverState *bs_top, Error **errp); -int bdrv_replace_node(BlockDriverState *from, BlockDriverState *to, - Error **errp); + +int GRAPH_WRLOCK +bdrv_replace_node(BlockDriverState *from, BlockDriverState *to, Error **errp); + int bdrv_replace_child_bs(BdrvChild *child, BlockDriverState *new_bs, Error **errp); BlockDriverState *bdrv_insert_node(BlockDriverState *bs, QDict *node_options, |