[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCHv2] block: add the optional file entry to query-block
From: |
Federico Simoncelli |
Subject: |
[Qemu-devel] [PATCHv2] block: add the optional file entry to query-block |
Date: |
Fri, 5 Jul 2013 10:28:52 -0400 |
This patch adds the optional file entry to the query-block output.
The value is a json-object representing the information about the
underlying file or device (when present).
Signed-off-by: Federico Simoncelli <address@hidden>
---
block/qapi.c | 7 +++++++
qapi-schema.json | 4 +++-
qmp-commands.hx | 8 ++++++++
tests/qemu-iotests/043.out | 15 +++++++++++++++
4 files changed, 33 insertions(+), 1 deletions(-)
diff --git a/block/qapi.c b/block/qapi.c
index a4bc411..40db983 100644
--- a/block/qapi.c
+++ b/block/qapi.c
@@ -171,6 +171,13 @@ void bdrv_query_image_info(BlockDriverState *bs,
return;
}
+ if (bs->file) {
+ bdrv_query_image_info(bs->file, &info->file, &err);
+ if (info->file) {
+ info->has_file = true;
+ }
+ }
+
*p_info = info;
}
diff --git a/qapi-schema.json b/qapi-schema.json
index 5c32528..0cb872c 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -238,6 +238,8 @@
#
# @backing-image: #optional info of the backing image (since 1.6)
#
+# @file: #optional info of the underlying file (since 1.6)
+#
# Since: 1.3
#
##
@@ -248,7 +250,7 @@
'*cluster-size': 'int', '*encrypted': 'bool',
'*backing-filename': 'str', '*full-backing-filename': 'str',
'*backing-filename-format': 'str', '*snapshots': ['SnapshotInfo'],
- '*backing-image': 'ImageInfo' } }
+ '*backing-image': 'ImageInfo', '*file': 'ImageInfo' } }
##
# @ImageCheck:
diff --git a/qmp-commands.hx b/qmp-commands.hx
index 362f0e1..bb8a931 100644
--- a/qmp-commands.hx
+++ b/qmp-commands.hx
@@ -1791,6 +1791,8 @@ Each json-object contain the following:
- "backing-image": the detail of the backing image, it is an
optional json-object only present when a
backing image present for this image
+ - "file": an optional json-object representing the information
+ about the underlying file or device (when present)
- "io-status": I/O operation status, only present if the device supports it
and the VM is configured to stop on errors. It's always reset
@@ -1842,6 +1844,12 @@ Example:
"format":"qcow2",
"virtual-size":2048000
}
+ "file":{
+ "filename":"disks/test.qcow2",
+ "format": "file",
+ "virtual-size": 262144,
+ "actual-size": 139264
+ }
}
},
"type":"unknown"
diff --git a/tests/qemu-iotests/043.out b/tests/qemu-iotests/043.out
index ad23337..6aea37b 100644
--- a/tests/qemu-iotests/043.out
+++ b/tests/qemu-iotests/043.out
@@ -44,6 +44,11 @@ cluster_size: 65536
"filename": "TEST_DIR/t.IMGFMT",
"cluster-size": 65536,
"format": "IMGFMT",
+ "file": {
+ "virtual-size": 327680,
+ "filename": "TEST_DIR/t.IMGFMT",
+ "format": "file",
+ },
"backing-filename": "TEST_DIR/t.IMGFMT.2.base",
"dirty-flag": false
},
@@ -52,6 +57,11 @@ cluster_size: 65536
"filename": "TEST_DIR/t.IMGFMT.2.base",
"cluster-size": 65536,
"format": "IMGFMT",
+ "file": {
+ "virtual-size": 327680,
+ "filename": "TEST_DIR/t.IMGFMT.2.base",
+ "format": "file",
+ },
"backing-filename": "TEST_DIR/t.IMGFMT.1.base",
"dirty-flag": false
},
@@ -60,6 +70,11 @@ cluster_size: 65536
"filename": "TEST_DIR/t.IMGFMT.1.base",
"cluster-size": 65536,
"format": "IMGFMT",
+ "file": {
+ "virtual-size": 327680,
+ "filename": "TEST_DIR/t.IMGFMT.1.base",
+ "format": "file",
+ },
"dirty-flag": false
}
]
--
1.7.1
- [Qemu-devel] [PATCHv2] block: add the optional file entry to query-block,
Federico Simoncelli <=