Hi, Any other comments for it, especially HMP part? > > V12: > Address Markus's comments: > 02/18: better incode comments for bdrv_snapshot_find(), add tip about the > logic change in snapshot create/delete/load/info if some snapshot's id is > mixed > with name in commit message. > 05/18: better incode comments for bdrv_query_snapshot_info_list(), do not > check return value in caller qemu-img. > 07/18: new patch changing the vm snapshot filter logic, to be exactly the > same with load_vmstate(). To tip it clearly this patch is made a seperate one, > and can be droped if original logic want to be kepted. > 08/18: squash -ENOMEDIUM and -ENOTSUP in switch statement in > bdrv_query_image_info(). > 11/18: better incode comments for bdrv_query_image_info(). > 12/18: change disk name suffix from .img to .qcow2 in example, to tip > better. > 14/18: new funtion message_printf(), which automatically dump to monitor if > it present, discard buffer or GString. > 15/18: use message_printf() instead of buffer. > 17/18: use message_printf() instead of buffer. > > Address Eric's comments: > 05/18: better incode comments for bdrv_query_snapshot_info_list(), do not > check return value in caller qemu-img. > > Address Stefan's comments: > 10/18: added doc about the meaning of "consistent snapshot" in > qmp-commands.hx. > > Address Kevin's comments: > 12/18: use local_error to detect error in qmp_query_snapshots(), in case > caller set errp = NULL. > > Wenchao Xia (18): > 1 block: move bdrv_snapshot_find() to block/snapshot.c > 2 block: distinguish id and name in bdrv_find_snapshot() > 3 qemu-img: remove unused parameter in collect_image_info() > 4 block: move collect_snapshots() and collect_image_info() to block/qapi.c > 5 block: add snapshot info query function bdrv_query_snapshot_info_list() > 6 block: add check for VM snapshot in bdrv_query_snapshot_info_list() > 7 block: change VM snapshot checking logic > 8 block: add image info query function bdrv_query_image_info() > 9 block: move qmp_query_block() and bdrv_query_info() to block/qapi.c > 10 qmp: add interface query-snapshots > 11 qmp: add recursive member in ImageInfo > 12 qmp: add ImageInfo in BlockDeviceInfo used by query-block > 13 block: move bdrv_snapshot_dump() and dump_human_image_info() to > block/qapi.c > 14 block: dump to monitor for bdrv_snapshot_dump() and > bdrv_image_info_dump() > 15 hmp: add function hmp_info_snapshots() > 16 hmp: switch snapshot info function to qmp based one > 17 hmp: show ImageInfo in 'info block' > 18 hmp: add parameters device and -v for info block > > block.c | 109 ----------- > block/Makefile.objs | 1 + > block/qapi.c | 452 > +++++++++++++++++++++++++++++++++++++++++++ > block/snapshot.c | 78 ++++++++ > hmp.c | 63 ++++++ > hmp.h | 1 + > include/block/block.h | 2 - > include/block/qapi.h | 43 ++++ > include/block/snapshot.h | 37 ++++ > include/qemu/error-report.h | 1 + > monitor.c | 9 +- > qapi-schema.json | 24 ++- > qemu-img.c | 165 +--------------- > qmp-commands.hx | 127 ++++++++++++- > savevm.c | 96 +--------- > util/qemu-error.c | 18 ++ > 16 files changed, 861 insertions(+), 365 deletions(-) > create mode 100644 block/qapi.c > create mode 100644 block/snapshot.c > create mode 100644 include/block/qapi.h > create mode 100644 include/block/snapshot.h > >
-- Best Regards Wenchao Xia