From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:40557) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UFkoG-00069t-LZ for qemu-devel@nongnu.org; Wed, 13 Mar 2013 08:29:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UFko7-0007IF-BI for qemu-devel@nongnu.org; Wed, 13 Mar 2013 08:29:32 -0400 Received: from mx1.redhat.com ([209.132.183.28]:58985) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UFko7-0007I7-3I for qemu-devel@nongnu.org; Wed, 13 Mar 2013 08:29:23 -0400 Message-ID: <5140711E.5090900@redhat.com> Date: Wed, 13 Mar 2013 06:29:18 -0600 From: Eric Blake MIME-Version: 1.0 References: <1363000996-13221-1-git-send-email-xiawenc@linux.vnet.ibm.com> <20130312100754.GC19624@stefanha-thinkpad.redhat.com> <513F54EE.1050205@redhat.com> <513FEA7A.7000102@linux.vnet.ibm.com> <20130313113408.GA30532@stefanha-thinkpad.muc.redhat.com> In-Reply-To: <20130313113408.GA30532@stefanha-thinkpad.muc.redhat.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="----enig2JWGQHXKFOXKSQRXBLLJG" Subject: Re: [Qemu-devel] [PATCH V9 00/14] qmp/hmp interfaces for internal snapshot info List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi Cc: kwolf@redhat.com, qemu-devel@nongnu.org, armbru@redhat.com, lcapitulino@redhat.com, pbonzini@redhat.com, Wenchao Xia This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2JWGQHXKFOXKSQRXBLLJG Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 03/13/2013 05:34 AM, Stefan Hajnoczi wrote: >> >> { 'type': 'BlockDeviceInfo', >> 'data': { 'file': 'str', 'ro': 'bool', 'drv': 'str', >> '*backing_file': 'str', 'backing_file_depth': 'int', >> 'encrypted': 'bool', 'encryption_key_missing': 'bool', >> 'bps': 'int', 'bps_rd': 'int', 'bps_wr': 'int', >> 'iops': 'int', 'iops_rd': 'int', 'iops_wr': 'int', >> 'images': ['ImageInfo']} }} >> >> In this way, new define of structure is not needed, and no break >> of API I guess, but disadvantage is there will be some duplicated info= >> in ImageInfo and other structure in BlockInfo, such as "file, >> encrypted". >=20 > I'm happy with adding a ImageInfo field into BlockDeviceInfo. >=20 > Why did you make it an array and what is the array's layout? I think the point of an array of ImageInfo is to let us return data on an entire backing chain. That is, if I have: image.raw <- middle.qcow2 (with internal snapshot "a") <- top.qcow2 (with internal snapshots "b", "c") then I want to see data on image.raw, as well as on snapshots a, b, and c, all in one command. For my example, 'images' would be a three-element array, with element 0 describing top.qcow2 and its two internal snapshots, element 1 describing middle.qcow2 and its snapshot, and element 2 describing image.raw. However, it's also worth remembering that there has been a proposal for having quorums, where a single block device can have multiple images associated with the top level, and where we would then want a recursive structure rather than an array for representing backing chain information of a given information within the array of multiple images associated with a single quorum device. --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org ------enig2JWGQHXKFOXKSQRXBLLJG Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.13 (GNU/Linux) Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJRQHEeAAoJEKeha0olJ0NqxeAH/isnX3/JqYpjUQ4Lmzm3p7J+ B9jfOKV5gV7bA4YT8vady13EIxWrsFl9Ztx6Rn2B4h+Bt0ORiwBI1M18Lw1xIwJ2 x6KFvm4oi3Y4rS0FNg9oEY7ege10PXZW7XnNVObZYvUyfQc3gIZV5/RO4pM5pbwE ga9Tko1rXfPby0s/03l8MLBwchh+l9uIgnhC2D0hOVJykHv5s2PZR3fK0bpBX+Ss jdObItszn+U6uGIzu4fzJRSgKzb9NSFq3Nzx3+KWCjTuBV5x70PXBkQj46zmY8Rl RNFwbMaAqi6IFiBYHWTaSU7XiQmNGhm5ds/KGtMPy+CgYlaJVEh2TmQmFPBdxEk= =qe/e -----END PGP SIGNATURE----- ------enig2JWGQHXKFOXKSQRXBLLJG--