diff options
author | Hanna Reitz <hreitz@redhat.com> | 2022-04-27 13:40:54 +0200 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2022-05-04 15:55:23 +0200 |
commit | 15aee7ac9587562b1d021959dedc2bbb7e9a9fb3 (patch) | |
tree | bde98b035df33ee320172531c6ec21a2fd46efd5 | |
parent | a81d8d4a7203e4be392f9ad37af104759b7cbda5 (diff) |
block: Classify bdrv_get_flags() as I/O function
This function is safe to call in an I/O context, and qcow2_do_open()
does so (invoked in an I/O context by qcow2_co_invalidate_cache()).
Signed-off-by: Hanna Reitz <hreitz@redhat.com>
Message-Id: <20220427114057.36651-2-hreitz@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-rw-r--r-- | block.c | 2 | ||||
-rw-r--r-- | include/block/block-global-state.h | 1 | ||||
-rw-r--r-- | include/block/block-io.h | 1 |
3 files changed, 2 insertions, 2 deletions
@@ -6298,7 +6298,7 @@ const char *bdrv_get_device_or_node_name(const BlockDriverState *bs) int bdrv_get_flags(BlockDriverState *bs) { - GLOBAL_STATE_CODE(); + IO_CODE(); return bs->open_flags; } diff --git a/include/block/block-global-state.h b/include/block/block-global-state.h index 25bb69bbef..21265e3966 100644 --- a/include/block/block-global-state.h +++ b/include/block/block-global-state.h @@ -172,7 +172,6 @@ void bdrv_next_cleanup(BdrvNextIterator *it); BlockDriverState *bdrv_next_monitor_owned(BlockDriverState *bs); void bdrv_iterate_format(void (*it)(void *opaque, const char *name), void *opaque, bool read_only); -int bdrv_get_flags(BlockDriverState *bs); char *bdrv_get_full_backing_filename(BlockDriverState *bs, Error **errp); char *bdrv_dirname(BlockDriverState *bs, Error **errp); diff --git a/include/block/block-io.h b/include/block/block-io.h index 5e3f346806..62c84f0519 100644 --- a/include/block/block-io.h +++ b/include/block/block-io.h @@ -103,6 +103,7 @@ int bdrv_apply_auto_read_only(BlockDriverState *bs, const char *errmsg, bool bdrv_is_read_only(BlockDriverState *bs); bool bdrv_is_writable(BlockDriverState *bs); bool bdrv_is_sg(BlockDriverState *bs); +int bdrv_get_flags(BlockDriverState *bs); bool bdrv_is_inserted(BlockDriverState *bs); void bdrv_lock_medium(BlockDriverState *bs, bool locked); void bdrv_eject(BlockDriverState *bs, bool eject_flag); |