From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:49021) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UfU8v-0007cx-IU for qemu-devel@nongnu.org; Thu, 23 May 2013 07:57:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UfU8r-0003FV-0M for qemu-devel@nongnu.org; Thu, 23 May 2013 07:57:13 -0400 Received: from mail-wi0-x22e.google.com ([2a00:1450:400c:c05::22e]:55463) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UfU8q-0003FN-QF for qemu-devel@nongnu.org; Thu, 23 May 2013 07:57:08 -0400 Received: by mail-wi0-f174.google.com with SMTP id c10so4506159wiw.7 for ; Thu, 23 May 2013 04:57:08 -0700 (PDT) Date: Thu, 23 May 2013 13:57:04 +0200 From: Stefan Hajnoczi Message-ID: <20130523115704.GG9093@stefanha-thinkpad.redhat.com> References: <5193AB0A.6090500@redhat.com> <20130515155823.GG2858@dhcp-200-207.str.redhat.com> <5193C93C.5060406@redhat.com> <20130516082441.GB2467@dhcp-200-207.str.redhat.com> <51952DE6.9050505@redhat.com> <20130522135305.GA23852@dhcp-200-207.str.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20130522135305.GA23852@dhcp-200-207.str.redhat.com> Subject: Re: [Qemu-devel] QMP interface for drive-add (or even blockdev-add) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin Wolf Cc: lcapitulino@redhat.com, armbru@redhat.com, stefanha@redhat.com, qemu-devel@nongnu.org On Wed, May 22, 2013 at 03:53:05PM +0200, Kevin Wolf wrote: > Am 16.05.2013 um 21:05 hat Eric Blake geschrieben: > > On 05/16/2013 02:24 AM, Kevin Wolf wrote: > The other thing that I'm not sure about is whether we should teach QAPI > to parse certain data structures just into QDicts instead of C structs, > or if dealing with the big unions inside the block layer actually makes > sense. This is an interesting question. It's very convenient from the code side - we don't have to worry about laying down a schema. However, the point of QAPI is to offer that schema that allows for us to reason about things like compatibility (hard to sneak in a patch that modifies the schema, easy to sneak in a patch that modifies block driver parameter code) and eliminates the boilerplate of type-checking/basic input validation. Even if it requires some effort, I think we should avoid tunneling schema-less data over QAPI. Stefan