From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:51826) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SFNaf-00088b-1x for qemu-devel@nongnu.org; Wed, 04 Apr 2012 06:37:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SFNaa-0002nd-2s for qemu-devel@nongnu.org; Wed, 04 Apr 2012 06:37:24 -0400 Received: from mail-lpp01m010-f45.google.com ([209.85.215.45]:62488) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SFNaZ-0002nT-Ob for qemu-devel@nongnu.org; Wed, 04 Apr 2012 06:37:19 -0400 Received: by lahe6 with SMTP id e6so172949lah.4 for ; Wed, 04 Apr 2012 03:37:17 -0700 (PDT) MIME-Version: 1.0 Sender: flukshun@gmail.com In-Reply-To: <4F7BFAEB.7070000@redhat.com> References: <4F7B610D.8000101@redhat.com> <20120404011843.GA2918@illuin> <4F7BFAEB.7070000@redhat.com> Date: Wed, 4 Apr 2012 05:37:17 -0500 Message-ID: From: Michael Roth Content-Type: multipart/alternative; boundary=f46d0433a0fae3126b04bcd80178 Subject: Re: [Qemu-devel] KVM call minutes April 3 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Dor Laor , qemu-devel@nongnu.org, KVM devel mailing list , Markus Armbruster --f46d0433a0fae3126b04bcd80178 Content-Type: text/plain; charset=ISO-8859-1 On Apr 4, 2012 2:42 AM, "Paolo Bonzini" wrote: > > Il 04/04/2012 03:18, Michael Roth ha scritto: > > Attacking the IDL/schema side first is the more rationale approach. From > > there we can potentially generate ASN.1 BER/DER visitors for the protocol > > side, or potentially even just vmstate bindings as a start. I've recently > > started looking into the latter... it's completely feasible, the only > > downside is it complicates the IDL due requiring support for a lot of > > what are very much vmstate-specific items, but it should be possible to > > do this in a manner where those annotations are self-contained and > > ignorable if we opted to replace vmstate-style declarations. > > We can also keep the current vmstate descriptions, but access fields > from the automatically-generated visitors instead of struct fields. > This keeps the IDL simple. It may be worthwhile as an incremental step though, one nice thing about automatically generated bindings is that with the QIDL Anthony prototyped a while back we assume we serialize by default, so changes in annotated structs automatically trigger changes in the generated bindings unless you explicitly mark fields as immutable/derivable/etc, which we can tie into the build or make check to automatically detect and bring attention to changes in vmstate. This may be worth the effort if we adopt the proposed 4 year migration support cycle for pc-1.0, since that'll continue to rely on vmstate even after we move on to an IDL and newer protocol. > > Paolo > --f46d0433a0fae3126b04bcd80178 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable


On Apr 4, 2012 2:42 AM, "Paolo Bonzini" <pbonzini@redhat.com> wrote:
>
> Il 04/04/2012 03:18, Michael Roth ha scritto:
> > Attacking the IDL/schema side first is the more rationale approac= h. From
> > there we can potentially generate ASN.1 BER/DER visitors for the = protocol
> > side, or potentially even just vmstate bindings as a start. I'= ;ve recently
> > started looking into the latter... it's completely feasible, = the only
> > downside is it complicates the IDL due requiring support for a lo= t of
> > what are very much vmstate-specific items, but it should be possi= ble to
> > do this in a manner where those annotations are self-contained an= d
> > ignorable if we opted to replace vmstate-style declarations.
>
> We can also keep the current vmstate descriptions, but access fields > from the automatically-generated visitors instead of struct fields. > This keeps the IDL simple.

It may be worthwhile as an incremental step though, one nice thing about= automatically generated bindings is that with the QIDL Anthony prototyped = a while back we assume we serialize by default, so changes in annotated str= ucts automatically trigger changes in the generated bindings unless you exp= licitly mark fields as immutable/derivable/etc, which we can tie into the b= uild or make check to automatically detect and bring attention to changes i= n vmstate. This may be worth the effort if we adopt the proposed 4 year mig= ration support cycle for pc-1.0, since that'll continue to rely on vmst= ate even after we move on to an IDL and newer protocol.

>
> Paolo
>

--f46d0433a0fae3126b04bcd80178--