We have different types of parents: block nodes, block backends and
jobs. So, it makes sense to specify type together with name.
While being here also use g_autofree.
iotest 307 output is updated.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Alberto Garcia <berto@igalia.com>
---
block/block-backend.c | 9 ++++-----
tests/qemu-iotests/307.out | 2 +-
2 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/block/block-backend.c b/block/block-backend.c
index 6fca9853e1..2b7e9b5192 100644
--- a/block/block-backend.c
+++ b/block/block-backend.c
@@ -142,19 +142,18 @@ static void blk_root_set_aio_ctx(BdrvChild *child, AioContext *ctx,
static char *blk_root_get_parent_desc(BdrvChild *child)
{
BlockBackend *blk = child->opaque;
- char *dev_id;
+ g_autofree char *dev_id = NULL;
if (blk->name) {
- return g_strdup(blk->name);
+ return g_strdup_printf("block device '%s'", blk->name);
}
dev_id = blk_get_attached_dev_id(blk);
if (*dev_id) {
- return dev_id;
+ return g_strdup_printf("block device '%s'", dev_id);
} else {
/* TODO Callback into the BB owner for something more detailed */
- g_free(dev_id);
- return g_strdup("a block device");
+ return g_strdup("unnamed block device");
}
}
diff --git a/tests/qemu-iotests/307.out b/tests/qemu-iotests/307.out
index daa8ad2da0..66bf2ddb74 100644
--- a/tests/qemu-iotests/307.out
+++ b/tests/qemu-iotests/307.out
@@ -53,7 +53,7 @@ exports available: 1
=== Add a writable export ===
{"execute": "block-export-add", "arguments": {"description": "This is the writable second export", "id": "export1", "name": "export1", "node-name": "fmt", "type": "nbd", "writable": true, "writethrough": true}}
-{"error": {"class": "GenericError", "desc": "Conflicts with use by sda as 'root', which does not allow 'write' on fmt"}}
+{"error": {"class": "GenericError", "desc": "Conflicts with use by block device 'sda' as 'root', which does not allow 'write' on fmt"}}
{"execute": "device_del", "arguments": {"id": "sda"}}
{"return": {}}
{"data": {"device": "sda", "path": "/machine/peripheral/sda"}, "event": "DEVICE_DELETED", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
--
2.29.2
Am 04.05.2021 um 11:45 hat Vladimir Sementsov-Ogievskiy geschrieben:
> We have different types of parents: block nodes, block backends and
> jobs. So, it makes sense to specify type together with name.
>
> While being here also use g_autofree.
>
> iotest 307 output is updated.
>
> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
> Reviewed-by: Alberto Garcia <berto@igalia.com>
> ---
> block/block-backend.c | 9 ++++-----
> tests/qemu-iotests/307.out | 2 +-
> 2 files changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/block/block-backend.c b/block/block-backend.c
> index 6fca9853e1..2b7e9b5192 100644
> --- a/block/block-backend.c
> +++ b/block/block-backend.c
> @@ -142,19 +142,18 @@ static void blk_root_set_aio_ctx(BdrvChild *child, AioContext *ctx,
> static char *blk_root_get_parent_desc(BdrvChild *child)
> {
> BlockBackend *blk = child->opaque;
> - char *dev_id;
> + g_autofree char *dev_id = NULL;
>
> if (blk->name) {
> - return g_strdup(blk->name);
> + return g_strdup_printf("block device '%s'", blk->name);
> }
>
> dev_id = blk_get_attached_dev_id(blk);
> if (*dev_id) {
> - return dev_id;
> + return g_strdup_printf("block device '%s'", dev_id);
> } else {
> /* TODO Callback into the BB owner for something more detailed */
> - g_free(dev_id);
> - return g_strdup("a block device");
> + return g_strdup("unnamed block device");
We should probably keep the article: "an unnamed block device"
> }
> }
Kevin
31.05.2021 18:45, Kevin Wolf wrote:
> Am 04.05.2021 um 11:45 hat Vladimir Sementsov-Ogievskiy geschrieben:
>> We have different types of parents: block nodes, block backends and
>> jobs. So, it makes sense to specify type together with name.
>>
>> While being here also use g_autofree.
>>
>> iotest 307 output is updated.
>>
>> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
>> Reviewed-by: Alberto Garcia <berto@igalia.com>
>> ---
>> block/block-backend.c | 9 ++++-----
>> tests/qemu-iotests/307.out | 2 +-
>> 2 files changed, 5 insertions(+), 6 deletions(-)
>>
>> diff --git a/block/block-backend.c b/block/block-backend.c
>> index 6fca9853e1..2b7e9b5192 100644
>> --- a/block/block-backend.c
>> +++ b/block/block-backend.c
>> @@ -142,19 +142,18 @@ static void blk_root_set_aio_ctx(BdrvChild *child, AioContext *ctx,
>> static char *blk_root_get_parent_desc(BdrvChild *child)
>> {
>> BlockBackend *blk = child->opaque;
>> - char *dev_id;
>> + g_autofree char *dev_id = NULL;
>>
>> if (blk->name) {
>> - return g_strdup(blk->name);
>> + return g_strdup_printf("block device '%s'", blk->name);
>> }
>>
>> dev_id = blk_get_attached_dev_id(blk);
>> if (*dev_id) {
>> - return dev_id;
>> + return g_strdup_printf("block device '%s'", dev_id);
>> } else {
>> /* TODO Callback into the BB owner for something more detailed */
>> - g_free(dev_id);
>> - return g_strdup("a block device");
>> + return g_strdup("unnamed block device");
>
> We should probably keep the article: "an unnamed block device"
OK, will do
--
Best regards,
Vladimir
© 2016 - 2026 Red Hat, Inc.