From 9b2aa84f87f5b95cb0295dcae38fbfbf115df2be Mon Sep 17 00:00:00 2001 From: Alberto Garcia Date: Wed, 8 Apr 2015 12:29:18 +0300 Subject: block: add bdrv_get_device_or_node_name() This function gets the device name associated with a BlockDriverState, or its node name if the device name is empty. Signed-off-by: Alberto Garcia Reviewed-by: Max Reitz Reviewed-by: Eric Blake Message-id: 4fa30aa8d61d9052ce266fd5429a59a14e941255.1428485266.git.berto@igalia.com Signed-off-by: Stefan Hajnoczi Signed-off-by: Kevin Wolf --- block.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'block.c') diff --git a/block.c b/block.c index d13b2e7835..cc8010ee20 100644 --- a/block.c +++ b/block.c @@ -3980,6 +3980,15 @@ const char *bdrv_get_device_name(const BlockDriverState *bs) return bs->blk ? blk_name(bs->blk) : ""; } +/* This can be used to identify nodes that might not have a device + * name associated. Since node and device names live in the same + * namespace, the result is unambiguous. The exception is if both are + * absent, then this returns an empty (non-null) string. */ +const char *bdrv_get_device_or_node_name(const BlockDriverState *bs) +{ + return bs->blk ? blk_name(bs->blk) : bs->node_name; +} + int bdrv_get_flags(BlockDriverState *bs) { return bs->open_flags; -- cgit v1.2.3-55-g7522