qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 4/4] qmp: Add optional switch "query-nodes" in q


From: Fam Zheng
Subject: Re: [Qemu-devel] [PATCH 4/4] qmp: Add optional switch "query-nodes" in query-blockstats
Date: Fri, 31 Oct 2014 11:20:15 +0800
User-agent: Mutt/1.5.23 (2014-03-12)

On Wed, 10/29 10:11, Max Reitz wrote:
> On 2014-10-29 at 06:04, Fam Zheng wrote:
> >This bool option will allow query all the node names. It iterates all
> >the BDSes that are assigned a name, also in this case don't query up the
> >backing chain.
> >
> >Signed-off-by: Fam Zheng <address@hidden>
> >---
> >  block/qapi.c         | 20 +++++++++++++-------
> >  hmp.c                |  2 +-
> >  qapi/block-core.json |  4 +++-
> >  qmp-commands.hx      |  2 +-
> >  4 files changed, 18 insertions(+), 10 deletions(-)
> >
> >diff --git a/block/qapi.c b/block/qapi.c
> >index a4d1a20..e26033e 100644
> >--- a/block/qapi.c
> >+++ b/block/qapi.c
> >@@ -322,7 +322,8 @@ static void bdrv_query_info(BlockBackend *blk, BlockInfo 
> >**p_info,
> >      qapi_free_BlockInfo(info);
> >  }
> >-static BlockStats *bdrv_query_stats(const BlockDriverState *bs)
> >+static BlockStats *bdrv_query_stats(const BlockDriverState *bs,
> >+                                    bool query_backing)
> >  {
> >      BlockStats *s;
> >@@ -352,12 +353,12 @@ static BlockStats *bdrv_query_stats(const 
> >BlockDriverState *bs)
> >      if (bs->file) {
> >          s->has_parent = true;
> >-        s->parent = bdrv_query_stats(bs->file);
> >+        s->parent = bdrv_query_stats(bs->file, query_backing);
> >      }
> >-    if (bs->backing_hd) {
> >+    if (query_backing && bs->backing_hd) {
> >          s->has_backing = true;
> >-        s->backing = bdrv_query_stats(bs->backing_hd);
> >+        s->backing = bdrv_query_stats(bs->backing_hd, query_backing);
> >      }
> 
> Is there a specific reason why you're not querying the backing chain but
> still recurse to bs->file?

Unlike its backing, there can be some information in ->file which is
interesting to the node itself, because it is ->file carries out the actual
read/write on the image. Makes sense?

Fam



reply via email to

[Prev in Thread] Current Thread [Next in Thread]