This serial of patches does two things: merge some info code in qemu-img, and add following interfaces: 1) qmp: query-images 2) qmp: query-snapshots 3) hmp: show snapshot info on a single block device These patches follows the rule that use qmp to retieve information, hmp layer just do a translation from qmp object it got, so almost every hmp interface may have a correlated qmp interface. To make code graceful, snapshot retrieving code in qemu and qemu-img are merged into block.c, and some function name was adjusted to make it tips better. Now it works as:
qemu qemu-img dump_monitor dump_stdout |--------------| | qmp | block Note: Last two patches need previous sent patches which extend hmp sub command, at: http://lists.nongnu.org/archive/html/qemu-devel/2012-12/msg03487.html v2: Rename and adjusted qmp interface according to comments from Eric. Spelling fix. Information retrieving function in block layer goes to seperated patch. Free qmp object after usage in hmp. Added counterpart in qmp-commands.hx. Better tips in qmp-schema.json. v3: Spelling fix in commit message, patch 03/11. Spelling fix in code, patch 06/11. Add comments that vm-state-size is in bytes, and change size of it in example to a reasonable number, patch 08/11. Wenchao Xia (11): qemu-img: remove unused parameter in collect_image_info() block: add bdrv_get_filename() function block: add snapshot and image info query function qemu-img: switch image retrieving function block: rename bdrv_query_info to bdrv_query_block_info qmp: add interface query-images. block: export function bdrv_find_snapshot() qmp: add interface query-snapshots hmp: export function hmp_handle_error() hmp: retrieve info from qmp for snapshot info hmp: show snapshot on single block device block.c | 200 ++++++++++++++++++++++++++++++++++++++++++++++++- hmp.c | 2 +- hmp.h | 2 + include/block/block.h | 14 +++- monitor.c | 6 +- qapi-schema.json | 40 ++++++++++ qemu-img.c | 87 +--------------------- qmp-commands.hx | 129 +++++++++++++++++++++++++++++++ savevm.c | 137 +++++++++++++++++---------------- 9 files changed, 458 insertions(+), 159 deletions(-)