From: Anthony Liguori <anthony@codemonkey.ws>
To: Juan Quintela <quintela@redhat.com>
Cc: dlaor@redhat.com, qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] Re: Live migration protocol, device features, ABIs and other beasts
Date: Mon, 23 Nov 2009 07:09:51 -0600 [thread overview]
Message-ID: <4B0A899F.2090805@codemonkey.ws> (raw)
In-Reply-To: <m3my2d4euy.fsf@neno.neno>
Juan Quintela wrote:
> Dor Laor <dlaor@redhat.com> wrote:
>
> I will go further, and think that this kind of issues should be put into
> the machine type.
>
I agree.
> If you start qemu with -M pc-0.10, it should save the state in a 0.10
> compatible way (that don't happens at the moment, but it should work
> that way).
>
Yes, that's a very good point.
>> The solution here is simpler - Every guest visible change should
>> translate into cmdline option. This is part of the machine type and
>> in addition should be configurable.
>> It's an issue we all should keep in the back of our heads and popup
>> when a new capability/change are introduced.
>>
>
> I think this creates again a exponential posibilities, when we are only
> interested in some small part of the combinations.
>
> Upstream: It only cares about what was is 0.10, 0.11 and 0.12, three
> combinations, not all possible combinations of all devices.
>
> Downstream: (we for instance) care about RHEL5.4 RHEL5.5 or similar, not
> all other possible combinations.
>
> Notice that this is important, we change devices constantly, but we need
> new machine types ... once each X months, i.e. they are much less.
>
Yes, I think this is an important point to keep things under control.
Supporting all possible combinations of different git versions is going
to be unrealistically difficult. However, making sure that we can
reproduce the major versions would work well.
A test suite that ran in the guest and tried to fingerprint the machine
would be pretty helpful. Dump the full config for each PCI device,
where they sit in the device model, etc. Dump ACPI tables. For a
subset of devices we support, query as much info as possible. Dump it
all to a config file.
We could run it against 0.11, then when 0.12 rolls around, run it again
in a guest with -M pc-0.11. A simple diff of the two config files would
tell us whether we broke guest compatibility.
>> Which protocol should we use? You're smarter than me, please suggest
>> one.
>> wrt the above guest abi issue, we should write a qemu spec with clear
>> definitions for devices, drivers, versions, etc.
>>
>> Looking forward interesting fruitful discussion,
>>
>
> My idea here is that we need to have further use of machine
> descriptions, once that is done, we need something like a new property
> for qdev (version?). Once there, each device could do:
> - if version != last_version -> die (what it happens now)
> - do someting sensible, not use the "new" features not existing on that
> version
> - edit the savevm format in an easy way.
>
But this would only kick in when using pc-0.11 or something, right?
Regards,
Anthony Liguori
next prev parent reply other threads:[~2009-11-23 13:10 UTC|newest]
Thread overview: 96+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-22 15:03 [Qemu-devel] Live migration protocol, device features, ABIs and other beasts Dor Laor
2009-11-22 15:49 ` Anthony Liguori
2009-11-22 20:22 ` [Qemu-devel] " Paolo Bonzini
2009-11-23 2:17 ` Anthony Liguori
2009-11-23 8:18 ` Paolo Bonzini
2009-11-23 13:04 ` Anthony Liguori
2009-11-23 8:26 ` Gleb Natapov
2009-11-23 9:29 ` Paolo Bonzini
2009-11-23 9:31 ` Gleb Natapov
[not found] ` <m3einp4e7c.fsf@neno.neno>
2009-11-23 12:37 ` Gleb Natapov
[not found] ` <m3iqd14edf.fsf@neno.neno>
2009-11-23 12:36 ` Gleb Natapov
[not found] ` <m3r5rpwcww.fsf@neno.neno>
2009-11-23 14:32 ` Gleb Natapov
2009-11-23 14:51 ` Anthony Liguori
2009-11-23 14:53 ` Gleb Natapov
2009-11-23 15:05 ` Anthony Liguori
2009-11-23 15:22 ` Gleb Natapov
2009-11-23 15:30 ` Paolo Bonzini
2009-11-23 15:32 ` Anthony Liguori
2009-11-23 15:49 ` Gleb Natapov
2009-11-23 16:09 ` Anthony Liguori
2009-11-23 16:15 ` Gleb Natapov
2009-11-23 16:19 ` Anthony Liguori
[not found] ` <m33a45s009.fsf@neno.neno>
2009-11-23 16:05 ` Gleb Natapov
2009-11-23 16:10 ` Anthony Liguori
2009-11-24 13:28 ` Michael S. Tsirkin
2009-11-23 13:01 ` Anthony Liguori
[not found] ` <m3vdh1wd0n.fsf@neno.neno>
2009-11-23 14:49 ` Anthony Liguori
2009-11-23 15:21 ` Eduardo Habkost
2009-11-23 16:16 ` Anthony Liguori
2009-11-23 17:08 ` Eduardo Habkost
2009-11-23 18:28 ` Anthony Liguori
2009-11-23 19:24 ` Eduardo Habkost
2009-11-23 19:49 ` Anthony Liguori
2009-11-23 21:21 ` Eduardo Habkost
2009-11-24 11:00 ` Dor Laor
[not found] ` <m3y6lxqkpv.fsf@neno.neno>
2009-11-23 16:44 ` Anthony Liguori
[not found] ` <m3zl6db11z.fsf@neno.neno>
2009-11-23 18:44 ` Anthony Liguori
2009-11-23 20:24 ` Eduardo Habkost
2009-11-24 13:39 ` Michael S. Tsirkin
2009-11-23 13:51 ` Eduardo Habkost
2009-11-23 14:21 ` Paolo Bonzini
2009-11-23 15:00 ` Anthony Liguori
2009-11-23 15:37 ` Eduardo Habkost
2009-11-23 15:02 ` Eduardo Habkost
2009-11-23 15:12 ` Anthony Liguori
2009-11-24 14:26 ` [Qemu-devel] " Michael S. Tsirkin
2009-11-23 14:53 ` [Qemu-devel] " Anthony Liguori
2009-11-24 14:28 ` [Qemu-devel] " Michael S. Tsirkin
2009-11-24 14:33 ` [Qemu-devel] " Anthony Liguori
2009-11-24 16:05 ` Michael S. Tsirkin
[not found] ` <m3skc2r66t.fsf@neno.neno>
2009-11-25 16:28 ` Michael S. Tsirkin
2009-11-24 13:17 ` [Qemu-devel] " Michael S. Tsirkin
2009-11-24 13:35 ` Paul Brook
2009-11-24 13:49 ` [Qemu-devel] " Michael S. Tsirkin
2009-11-24 13:59 ` [Qemu-devel] " Paul Brook
2009-11-24 14:21 ` Michael S. Tsirkin
2009-11-24 17:06 ` Blue Swirl
2009-11-24 17:08 ` Michael S. Tsirkin
2009-11-24 17:43 ` Paolo Bonzini
2009-11-24 18:51 ` Anthony Liguori
2009-11-24 18:56 ` Blue Swirl
2009-11-24 19:24 ` Anthony Liguori
2009-11-24 18:57 ` Paolo Bonzini
2009-11-24 19:29 ` Anthony Liguori
2009-11-24 20:01 ` Michael S. Tsirkin
[not found] ` <m3my2ct2qe.fsf@neno.neno>
2009-11-24 17:41 ` Paolo Bonzini
2009-11-24 13:21 ` Michael S. Tsirkin
2009-11-24 13:45 ` Anthony Liguori
2009-11-24 13:55 ` Michael S. Tsirkin
2009-11-23 12:15 ` Juan Quintela
2009-11-23 13:09 ` Anthony Liguori [this message]
2009-11-23 14:13 ` Juan Quintela
2009-11-24 14:05 ` Michael S. Tsirkin
2009-11-24 14:20 ` Juan Quintela
2009-11-24 14:35 ` Michael S. Tsirkin
2009-11-25 13:42 ` Gerd Hoffmann
2009-11-25 13:42 ` Michael S. Tsirkin
2009-11-25 14:10 ` Gerd Hoffmann
2009-11-25 14:09 ` Michael S. Tsirkin
2009-11-25 14:52 ` Gerd Hoffmann
2009-11-26 18:03 ` Andrea Arcangeli
2009-11-25 13:36 ` Gerd Hoffmann
2009-11-25 13:40 ` Michael S. Tsirkin
2009-11-25 13:59 ` Gerd Hoffmann
2009-11-25 14:03 ` Michael S. Tsirkin
2009-11-25 14:53 ` Juan Quintela
2009-11-25 15:01 ` Michael S. Tsirkin
2009-11-24 10:39 ` Dor Laor
2009-11-24 14:01 ` Michael S. Tsirkin
2009-11-24 14:21 ` Juan Quintela
2009-11-24 14:38 ` Michael S. Tsirkin
2009-11-24 16:05 ` Michael S. Tsirkin
2009-11-25 9:30 ` Juan Quintela
2009-11-25 9:32 ` Michael S. Tsirkin
2009-11-25 13:36 ` Juan Quintela
2009-11-24 13:59 ` Michael S. Tsirkin
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=4B0A899F.2090805@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=dlaor@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.com \
/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).