From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58621) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UkPwM-0005bW-Nl for qemu-devel@nongnu.org; Wed, 05 Jun 2013 22:28:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UkPwL-0005HO-KX for qemu-devel@nongnu.org; Wed, 05 Jun 2013 22:28:38 -0400 Received: from e28smtp05.in.ibm.com ([122.248.162.5]:45389) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UkPwL-0005Gi-05 for qemu-devel@nongnu.org; Wed, 05 Jun 2013 22:28:37 -0400 Received: from /spool/local by e28smtp05.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Jun 2013 07:53:53 +0530 Received: from d28relay04.in.ibm.com (d28relay04.in.ibm.com [9.184.220.61]) by d28dlp03.in.ibm.com (Postfix) with ESMTP id 05B10125804E for ; Thu, 6 Jun 2013 08:00:35 +0530 (IST) Received: from d28av02.in.ibm.com (d28av02.in.ibm.com [9.184.220.64]) by d28relay04.in.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id r562SKlU14614898 for ; Thu, 6 Jun 2013 07:58:20 +0530 Received: from d28av02.in.ibm.com (loopback [127.0.0.1]) by d28av02.in.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id r562SOVe016604 for ; Thu, 6 Jun 2013 12:28:25 +1000 Message-ID: <51AFF36D.4050701@linux.vnet.ibm.com> Date: Thu, 06 Jun 2013 10:26:53 +0800 From: Wenchao Xia MIME-Version: 1.0 References: <1370229254-9414-1-git-send-email-xiawenc@linux.vnet.ibm.com> In-Reply-To: <1370229254-9414-1-git-send-email-xiawenc@linux.vnet.ibm.com> Content-Type: text/plain; charset=GB2312 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH V14 0/6] enhancement for qmp/hmp interfaces of block info List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Wenchao Xia Cc: kwolf@redhat.com, phrdina@redhat.com, stefanha@gmail.com, qemu-devel@nongnu.org, lcapitulino@redhat.com, pbonzini@redhat.com, armbru@redhat.com ÓÚ 2013-6-3 11:14, Wenchao Xia дµÀ: > This series lets qmp interface show delaied info, including internal snapshot > /backing chain on all block device at runtime, which helps management stack and > human user, by retrieving exactly the same info of what qemu sees. > > Example: > -> { "execute": "query-block" } > <- { > "return":[ > { > "io-status": "ok", > "device":"ide0-hd0", > "locked":false, > "removable":false, > "inserted":{ > "ro":false, > "drv":"qcow2", > "encrypted":false, > "file":"disks/test.qcow2", > "backing_file_depth":1, > "bps":1000000, > "bps_rd":0, > "bps_wr":0, > "iops":1000000, > "iops_rd":0, > "iops_wr":0, > "image":{ > "filename":"disks/test.qcow2", > "format":"qcow2", > "virtual-size":2048000, > "backing_file":"base.qcow2", > "full-backing-filename":"disks/base.qcow2", > "backing-filename-format:"qcow2", > "snapshots":[ > { > "id": "1", > "name": "snapshot1", > "vm-state-size": 0, > "date-sec": 10000200, > "date-nsec": 12, > "vm-clock-sec": 206, > "vm-clock-nsec": 30 > } > ], > "backing-image":{ > "filename":"disks/base.qcow2", > "format":"qcow2", > "virtual-size":2048000 > } > } > }, > "type":"unknown" > }, > { > "io-status": "ok", > "device":"ide1-cd0", > "locked":false, > "removable":true, > "type":"unknown" > }, > { > "device":"floppy0", > "locked":false, > "removable":true, > "type":"unknown" > }, > { > "device":"sd0", > "locked":false, > "removable":true, > "type":"unknown" > } > ] > } > > These patches follows the rule that use qmp to retrieve information, > hmp layer just does a translation from qmp object it got. To make code > graceful, snapshot and image info retrieving code in qemu and qemu-img are > merged into block layer, and some function names were adjusted to describe > them better. For the part touched by the series, it works as: > > qemu qemu-img > > dump_monitor dump_stdout > |--------------| > | > block/qapi.c > > This series requires following series applied: > "[PATCH V3 0/4] qapi and snapshot code clean up in block layer", > https://lists.gnu.org/archive/html/qemu-devel/2013-05/msg03539.html > > Special thanks for Markus, Stefan, Kevin, Eric reviewing many times. > > v14: > Address Eric's comments: > 2/6: better comments in code. > 3/6: spelling fix in comments. > > Wenchao Xia (6): > 1 block: add snapshot info query function bdrv_query_snapshot_info_list() > 2 block: add image info query function bdrv_query_image_info() > 3 qmp: add recursive member in ImageInfo > 4 qmp: add ImageInfo in BlockDeviceInfo used by query-block > 5 hmp: show ImageInfo in 'info block' > 6 hmp: add parameters device and -v for info block > > block/qapi.c | 148 ++++++++++++++++++++++++++++++++++++++++++-------- > hmp.c | 21 +++++++ > include/block/qapi.h | 14 +++-- > monitor.c | 7 ++- > qapi-schema.json | 10 +++- > qemu-img.c | 10 +++- > qmp-commands.hx | 69 +++++++++++++++++++++++- > 7 files changed, 242 insertions(+), 37 deletions(-) > > > Since Stefan have given comments on V13, pls ignore this version, I'll respin V15. -- Best Regards Wenchao Xia