[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 3/7] block: make bdrv_find_child() function public
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
[PATCH v6 3/7] block: make bdrv_find_child() function public |
Date: |
Wed, 22 Feb 2023 21:55:48 +0300 |
To be reused soon for blockdev-replace functionality.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
---
include/block/block_int-io.h | 1 +
block.c | 13 +++++++++++++
blockdev.c | 14 --------------
3 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/include/block/block_int-io.h b/include/block/block_int-io.h
index 4430bf4c4a..8f76a33c96 100644
--- a/include/block/block_int-io.h
+++ b/include/block/block_int-io.h
@@ -127,6 +127,7 @@ int coroutine_fn
bdrv_co_refresh_total_sectors(BlockDriverState *bs,
int co_wrapper_mixed
bdrv_refresh_total_sectors(BlockDriverState *bs, int64_t hint);
+BdrvChild *bdrv_find_child(BlockDriverState *parent_bs, const char
*child_name);
BdrvChild *bdrv_cow_child(BlockDriverState *bs);
BdrvChild *bdrv_filter_child(BlockDriverState *bs);
BdrvChild *bdrv_filter_or_cow_child(BlockDriverState *bs);
diff --git a/block.c b/block.c
index 0c807d15cd..c78de4d280 100644
--- a/block.c
+++ b/block.c
@@ -8005,6 +8005,19 @@ int bdrv_make_empty(BdrvChild *c, Error **errp)
return 0;
}
+BdrvChild *bdrv_find_child(BlockDriverState *parent_bs, const char *child_name)
+{
+ BdrvChild *child;
+
+ QLIST_FOREACH(child, &parent_bs->children, next) {
+ if (strcmp(child->name, child_name) == 0) {
+ return child;
+ }
+ }
+
+ return NULL;
+}
+
/*
* Return the child that @bs acts as an overlay for, and from which data may be
* copied in COW or COR operations. Usually this is the backing file.
diff --git a/blockdev.c b/blockdev.c
index d7b5c18f0a..461657edda 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -3617,20 +3617,6 @@ out:
aio_context_release(aio_context);
}
-static BdrvChild *bdrv_find_child(BlockDriverState *parent_bs,
- const char *child_name)
-{
- BdrvChild *child;
-
- QLIST_FOREACH(child, &parent_bs->children, next) {
- if (strcmp(child->name, child_name) == 0) {
- return child;
- }
- }
-
- return NULL;
-}
-
void qmp_x_blockdev_change(const char *parent, const char *child,
const char *node, Error **errp)
{
--
2.34.1
- [PATCH v6 0/7] blockdev-replace, Vladimir Sementsov-Ogievskiy, 2023/02/22
- [PATCH v6 1/7] block-backend: blk_root(): drop const specifier on return type, Vladimir Sementsov-Ogievskiy, 2023/02/22
- [PATCH v6 2/7] block/export: add blk_by_export_id(), Vladimir Sementsov-Ogievskiy, 2023/02/22
- [PATCH v6 3/7] block: make bdrv_find_child() function public,
Vladimir Sementsov-Ogievskiy <=
- [PATCH v6 5/7] block: bdrv_get_xdbg_block_graph(): report export ids, Vladimir Sementsov-Ogievskiy, 2023/02/22
- [PATCH v6 4/7] qapi: add x-blockdev-replace command, Vladimir Sementsov-Ogievskiy, 2023/02/22
- [PATCH v6 7/7] iotests: add filter-insertion, Vladimir Sementsov-Ogievskiy, 2023/02/22
- [PATCH v6 6/7] iotests.py: introduce VM.assert_edges_list() method, Vladimir Sementsov-Ogievskiy, 2023/02/22