diff options
author | Fam Zheng <famz@redhat.com> | 2014-10-31 11:32:56 +0800 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2014-12-10 10:25:29 +0100 |
commit | 4875a77950811631c26e156592e8b8df22208085 (patch) | |
tree | 8e9fe23ba2fe9389041bb76df2abdefd8998152b | |
parent | 20a9e77dfabb3e664c0873726be1540175a4fda1 (diff) |
block: Include "node-name" if present in query-blockstats
Node name is a better identifier of BDS.
We will want to query statistics of a BDS node buried in the BDS graph,
so reporting the node's name if there is one will do the trick.
Signed-off-by: Fam Zheng <famz@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-rw-r--r-- | block/qapi.c | 5 | ||||
-rw-r--r-- | qapi/block-core.json | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/block/qapi.c b/block/qapi.c index a87a34a8b4..d70336a012 100644 --- a/block/qapi.c +++ b/block/qapi.c @@ -311,6 +311,11 @@ static BlockStats *bdrv_query_stats(const BlockDriverState *bs) s->device = g_strdup(bdrv_get_device_name(bs)); } + if (bdrv_get_node_name(bs)[0]) { + s->has_node_name = true; + s->node_name = g_strdup(bdrv_get_node_name(bs)); + } + s->stats = g_malloc0(sizeof(*s->stats)); s->stats->rd_bytes = bs->stats.nr_bytes[BLOCK_ACCT_READ]; s->stats->wr_bytes = bs->stats.nr_bytes[BLOCK_ACCT_WRITE]; diff --git a/qapi/block-core.json b/qapi/block-core.json index a14e6ab1fd..de1bd45564 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -405,6 +405,8 @@ # @device: #optional If the stats are for a virtual block device, the name # corresponding to the virtual block device. # +# @device: #optional The node name of the device. (Since 2.3) +# # @stats: A @BlockDeviceStats for the device. # # @parent: #optional This describes the file block device if it has one. @@ -415,7 +417,8 @@ # Since: 0.14.0 ## { 'type': 'BlockStats', - 'data': {'*device': 'str', 'stats': 'BlockDeviceStats', + 'data': {'*device': 'str', '*node-name': 'str', + 'stats': 'BlockDeviceStats', '*parent': 'BlockStats', '*backing': 'BlockStats'} } |