From ec69926313e8edae11091849f536b1f16da53ab7 Mon Sep 17 00:00:00 2001 From: Fam Zheng Date: Mon, 27 Jan 2014 07:46:43 +0100 Subject: [PATCH 19/22] qapi: Add "backing" to BlockStats RH-Author: Fam Zheng Message-id: <1390808803-6464-1-git-send-email-famz@redhat.com> Patchwork-id: 56952 O-Subject: [RHEL-7 qemu-kvm PATCH] qapi: Add "backing" to BlockStats Bugzilla: 1041564 RH-Acked-by: Stefan Hajnoczi RH-Acked-by: Kevin Wolf RH-Acked-by: Miroslav Rezanina Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1041564 Brew: https://brewweb.devel.redhat.com/taskinfo?taskID=6949016 Currently there is no way to query BlockStats of the backing chain. This adds "backing" field into BlockStats to make it possible. The comment of "parent" is reworded. Signed-off-by: Fam Zheng Reviewed-by: Benoit Canet Reviewed-by: Eric Blake Signed-off-by: Kevin Wolf (cherry picked from commit c8059b97e1f9b4635b836ee98373a0f72f9fc0b4) Signed-off-by: Fam Zheng --- block/qapi.c | 5 +++++ qapi-schema.json | 10 ++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) Signed-off-by: Miroslav Rezanina --- block/qapi.c | 5 +++++ qapi-schema.json | 10 ++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/block/qapi.c b/block/qapi.c index 87423fb..77e1719 100644 --- a/block/qapi.c +++ b/block/qapi.c @@ -295,6 +295,11 @@ BlockStats *bdrv_query_stats(const BlockDriverState *bs) s->parent = bdrv_query_stats(bs->file); } + if (bs->backing_hd) { + s->has_backing = true; + s->backing = bdrv_query_stats(bs->backing_hd); + } + return s; } diff --git a/qapi-schema.json b/qapi-schema.json index 6158ea5..8b257e2 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -1007,15 +1007,17 @@ # # @stats: A @BlockDeviceStats for the device. # -# @parent: #optional This may point to the backing block device if this is a -# a virtual block device. If it's a backing block, this will point -# to the backing file is one is present. +# @parent: #optional This describes the file block device if it has one. +# +# @backing: #optional This describes the backing block device if it has one. +# (Since 2.0) # # Since: 0.14.0 ## { 'type': 'BlockStats', 'data': {'*device': 'str', 'stats': 'BlockDeviceStats', - '*parent': 'BlockStats'} } + '*parent': 'BlockStats', + '*backing': 'BlockStats'} } ## # @query-blockstats: -- 1.7.1