From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34205) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVdqy-0007Zn-K3 for qemu-devel@nongnu.org; Wed, 11 Mar 2015 06:27:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YVdqv-0003gi-UO for qemu-devel@nongnu.org; Wed, 11 Mar 2015 06:27:04 -0400 Received: from mx1.redhat.com ([209.132.183.28]:47616) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVdqv-0003gM-Mz for qemu-devel@nongnu.org; Wed, 11 Mar 2015 06:27:01 -0400 Date: Wed, 11 Mar 2015 11:26:16 +0100 From: Kevin Wolf Message-ID: <20150311102616.GC6628@noname.str.redhat.com> References: <54F9DFCB.8000204@redhat.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Nq2Wo0NMKNjxTN9z" Content-Disposition: inline In-Reply-To: <54F9DFCB.8000204@redhat.com> Subject: Re: [Qemu-devel] [PATCH 0/1] Get the list of arguments from a QMP command List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eric Blake Cc: Michael Roth , Markus Armbruster , Alberto Garcia , qemu-devel@nongnu.org, Luiz Capitulino --Nq2Wo0NMKNjxTN9z Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Am 06.03.2015 um 18:11 hat Eric Blake geschrieben: > On 02/24/2015 06:51 AM, Alberto Garcia wrote: > > Hello, > >=20 > > this is a follow-up to the comments from Eric Blake about my patches > > to extend the block streaming API: > >=20 > > https://lists.gnu.org/archive/html/qemu-devel/2015-02/msg04231.html > >=20 > > Since QEMU doesn't have an easy way to tell the arguments that a > > particular QMP command supports, and it seems that it would be useful > > for libvirt and possibly others, I decided to write a simple patch > > that adds that feature. >=20 > This is potentially a step in the right direction for full > introspection, but I'm a bit worried that it's half-baked. That is, it > only states whether an argument is present or not, but doesn't say what > type those arguments are, and most glaringly, doesn't tell me anything > about type changes, such as adding new enum values or new struct > members. In other words, while this interface might help libvirt, it > won't solve all the qapi questions that libvirt has, and I'm worried > that committing this and then adding full introspection will burden us > with multiple implementations to keep running. I suggested going this route to Alberto because our previous attempts on doing the full introspection all have failed, and requesting to do such a large project on the side just for getting in some block layer improvements wouldn't be fair. Sometimes it's just more realistic to approach things incrementally. It's the same thing with the blockdev work: We're still not fully there, but discussing about the full solution for three more years wouldn't have helped either. As far as I can tell, this approach is extensible enough that the other relevant information can be added later without breaking the API. I believe this is what we should concentrate on now rather than insisting that the implementation must be complete from the start. > > Feedback is welcome. >=20 > I'm still thinking about the actual patch, and whether we want to commit > to this or just bite the bullet and go for full introspection. At any > rate, it's a bit late for 2.3, so we have the full 2.4 cycle to get it > right. If someone were to provide full introspection for 2.4, that would be best. But I'd rather merge something like this than having nothing for another couple of releases. Kevin --Nq2Wo0NMKNjxTN9z Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQIcBAEBAgAGBQJVABhIAAoJEH8JsnLIjy/Wh7oP/3FYSFsfMRBpVuP6tN8abvGA r4uAeI8IX8s6YbU+ww1PoM/yXLRqdwk4ioXXK72rqF5Fc6tCLzGmVvjTUKGmA9bF fEv4O8BwZTO2w3FDyPZ1UEX+YNpmT6XtPh9Z4gzBdvjfguT1jkrd2VT6khHs3rZs RHNUe4pUqUvyRuKnzxa+T1ddLqxS9N6nJQEAyFDYuLfjC2WNqD1td0HgyO8bOmpR SxtToVOYYxmHblRP0S/Ce0aP+UAlAsqI8gkDfE2XxpzWHuyPMF9R8S2qfwnDB9Sk FlafhUIp4D8NrfDiSmXhY0c0VE3svUGPrpNwYqmvnBN2sdqRT5imliVK+9y4SHcz ZRGRI6JQGjAlZcKXfp7nmio48G8PcGE0Oqn8e+0pCON9S0SM5lhDXQfBOXVel7gT xK5AXzeqFt2AwTZqlBxT2tDjkZFgb1Mi23xP8E2E0SbiEXkO7uEososxGGjeJGQl +DV9ImS+kxxFoZsITWxB6iA82RnEpvjYLXKNc97boidd7uxWPx9Sc04/d5WkdI2H EsSvAvBc6AqSnvPasKOAXfERahLHDHKp1xjqe3YjrrFD+Xh4rAQJ7uxZwgjHfjHL 4DWNXf/moYc9V4cWm5Cr4KWl3ko6O0vs/NDe9ovTlOMmk3Z7S1A9kK2UrKLSOAo/ QpECjSOAwXdla1ikDrYk =3/os -----END PGP SIGNATURE----- --Nq2Wo0NMKNjxTN9z--