qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Dor Laor <dlaor@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: qemu-devel@nongnu.org, Paolo Bonzini <pbonzini@redhat.com>,
	Markus Armbruster <armbru@redhat.com>,
	KVM devel mailing list <kvm@vger.kernel.org>,
	Michael Roth <mdroth@linux.vnet.ibm.com>
Subject: Re: [Qemu-devel] KVM call minutes April 3
Date: Wed, 04 Apr 2012 15:01:48 +0300	[thread overview]
Message-ID: <4F7C382C.9000700@redhat.com> (raw)
In-Reply-To: <4F7C3608.50505@codemonkey.ws>

On 04/04/2012 02:52 PM, Anthony Liguori wrote:
> On 04/04/2012 05:53 AM, Dor Laor wrote:
>> On 04/04/2012 01:37 PM, Michael Roth wrote:
>>>
>>> On Apr 4, 2012 2:42 AM, "Paolo Bonzini" <pbonzini@redhat.com
>>> <mailto:pbonzini@redhat.com>> 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.
>>
>> Beyond ASL/IDL I like to be sure that we're not just translating one
>> format to
>> other representation but instead we introduce some new functionality
>> like:
>> - Ability to negotiate the protocol version
>
> Ack.
>
>> - Bi-direction data exchange, the sender will send data as a function
>> of the target release
>
> The reason bi-direction data exchange doesn't exist is because it would
> add latency to the critical path. I think we should avoid bi-directional

Not necessarily, there is not need to do the exchange on the down time, 
you can do it ahead of time during the initial connection and few 
additional msec or even a second won't change much.

> data exchange unless there's an extremely compelling reason to do so.

The key advantage is that you'll be able to migrate to an old qemu that 
may not be compatible w/ the standard protocol and the source will be 
able to discover this and adjust.
At the moment I don't have anything more concrete than that but I think 
that's happen in the past and will continue to happen and we can add the 
required hook into the protocol.

>
>> - Include the machine type too
>> - Synchronize the entire qemu cmdline and don't relay on management to
>> set it up.
>> - Along the way, deal w/ hotplug events.
>
> This will be address via QOM. As we convert backends and machine types,
> we should be able to dump out the full configuration and send it over
> the wire.
>
> Regards,
>
> Anthony Liguori
>
>>
>>>
>>> >
>>> > Paolo
>>> >
>>>
>>
>>
>
>

  reply	other threads:[~2012-04-04 12:02 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-03 14:43 [Qemu-devel] KVM call minutes April 3 Markus Armbruster
2012-04-03 20:43 ` Dor Laor
2012-04-04  1:18   ` Michael Roth
2012-04-04  7:40     ` Paolo Bonzini
2012-04-04 10:37       ` Michael Roth
2012-04-04 10:53         ` Dor Laor
2012-04-04 11:52           ` Anthony Liguori
2012-04-04 12:01             ` Dor Laor [this message]
2012-04-04 12:14           ` Michael Roth
2012-04-04 13:21             ` Igor Mammedov
2012-04-04 14:39               ` Michael Roth
2012-04-05 16:16                 ` Avi Kivity
2012-04-04 11:48   ` Anthony Liguori

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F7C382C.9000700@redhat.com \
    --to=dlaor@redhat.com \
    --cc=anthony@codemonkey.ws \
    --cc=armbru@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=mdroth@linux.vnet.ibm.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).