Message ID | 1343055415-24767-3-git-send-email-benoit@irqsave.net |
---|---|
State | New |
Headers | show |
On Mon, 23 Jul 2012 16:56:54 +0200 benoit.canet@gmail.com wrote: > From: Benoît Canet <benoit@irqsave.net> > > Use the dedicated counting function in qmp_query_block in order to > propagate the backing file count to HMP. > > Signed-off-by: Benoit Canet <benoit@irqsave.net> > --- > block.c | 2 ++ > qapi-schema.json | 9 ++++++--- > 2 files changed, 8 insertions(+), 3 deletions(-) > > diff --git a/block.c b/block.c > index 1128356..23b4aab 100644 > --- a/block.c > +++ b/block.c > @@ -2448,6 +2448,8 @@ BlockInfoList *qmp_query_block(Error **errp) > if (bs->backing_file[0]) { > info->value->inserted->has_backing_file = true; > info->value->inserted->backing_file = g_strdup(bs->backing_file); > + info->value->inserted->file_ancestors_count = > + bdrv_get_file_ancestors_count(bs); > } > > if (bs->io_limits_enabled) { > diff --git a/qapi-schema.json b/qapi-schema.json > index a92adb1..1ae0fc7 100644 > --- a/qapi-schema.json > +++ b/qapi-schema.json > @@ -398,6 +398,8 @@ > # > # @backing_file: #optional the name of the backing file (for copy-on-write) > # > +# @file_ancestors_count: #optional the count of ancestors backing files (for copy-on-write) > +# > # @encrypted: true if the backing device is encrypted > # > # @bps: total throughput limit in bytes per second is specified > @@ -418,9 +420,10 @@ > ## > { 'type': 'BlockDeviceInfo', > 'data': { 'file': 'str', 'ro': 'bool', 'drv': 'str', > - '*backing_file': 'str', 'encrypted': 'bool', > - 'bps': 'int', 'bps_rd': 'int', 'bps_wr': 'int', > - 'iops': 'int', 'iops_rd': 'int', 'iops_wr': 'int'} } > + '*backing_file': 'str', 'file_ancestors_count', 'int', Syntax error, it should be 'file_ancestors_count: int'. And, wouldn't be better to call it backing_file_ancestors_count? Otherwise the qmp part looks good to me. > + 'encrypted': 'bool', 'bps': 'int', 'bps_rd': 'int', > + 'bps_wr': 'int', 'iops': 'int', 'iops_rd': 'int', > + 'iops_wr': 'int'} } > > ## > # @BlockDeviceIoStatus:
diff --git a/block.c b/block.c index 1128356..23b4aab 100644 --- a/block.c +++ b/block.c @@ -2448,6 +2448,8 @@ BlockInfoList *qmp_query_block(Error **errp) if (bs->backing_file[0]) { info->value->inserted->has_backing_file = true; info->value->inserted->backing_file = g_strdup(bs->backing_file); + info->value->inserted->file_ancestors_count = + bdrv_get_file_ancestors_count(bs); } if (bs->io_limits_enabled) { diff --git a/qapi-schema.json b/qapi-schema.json index a92adb1..1ae0fc7 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -398,6 +398,8 @@ # # @backing_file: #optional the name of the backing file (for copy-on-write) # +# @file_ancestors_count: #optional the count of ancestors backing files (for copy-on-write) +# # @encrypted: true if the backing device is encrypted # # @bps: total throughput limit in bytes per second is specified @@ -418,9 +420,10 @@ ## { 'type': 'BlockDeviceInfo', 'data': { 'file': 'str', 'ro': 'bool', 'drv': 'str', - '*backing_file': 'str', 'encrypted': 'bool', - 'bps': 'int', 'bps_rd': 'int', 'bps_wr': 'int', - 'iops': 'int', 'iops_rd': 'int', 'iops_wr': 'int'} } + '*backing_file': 'str', 'file_ancestors_count', 'int', + 'encrypted': 'bool', 'bps': 'int', 'bps_rd': 'int', + 'bps_wr': 'int', 'iops': 'int', 'iops_rd': 'int', + 'iops_wr': 'int'} } ## # @BlockDeviceIoStatus: