This serial of patches does two things: merge some info code in qemu-img, and add following interfaces: 1) qmp: query-image 2) qmp: query-snapshot 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 Wenchao Xia (11): qemu-img: remove unused parameter in collect_image_info() block: add bdrv_get_filename() function qemu-img: remove parameter filename in collect_image_info() qemu-img: move image retrieving function to block layer block: rename bdrv_query_info to bdrv_query_block_info qmp: add interface query-image block: move bdrv_find_snapshot to block.c qmp: add interface query-snapshot hmp: export function hmp_handle_error() hmp: retrieve info from qmp for snapshot info hmp: show snapshot on single block device block.c | 198 ++++++++++++++++++++++++++++++++++++++++++++++++- hmp.c | 2 +- hmp.h | 2 + include/block/block.h | 14 +++- monitor.c | 6 +- qapi-schema.json | 23 ++++++ qemu-img.c | 87 +--------------------- savevm.c | 135 +++++++++++++++++----------------- 8 files changed, 308 insertions(+), 159 deletions(-)