On Mon, Nov 23, 2009 at 03:13:59PM +0100, Juan Quintela wrote: > Anthony Liguori <anth...@codemonkey.ws> wrote: > > Juan Quintela wrote: > >> Dor Laor <dl...@redhat.com> wrote: > >>> > >> > >> 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? > > Yeap. > > At this point, pc-0.10 is just: > > static QEMUMachine pc_machine_v0_10 = { > .name = "pc-0.10", > .desc = "Standard PC, qemu 0.10", > .init = pc_init_pci, > .max_cpus = 255, > .compat_props = (CompatProperty[]) { > { > .driver = "virtio-blk-pci", > .property = "class", > .value = stringify(PCI_CLASS_STORAGE_OTHER), > },{ > .driver = "virtio-console-pci", > .property = "class", > .value = stringify(PCI_CLASS_DISPLAY_OTHER), > },{ > .driver = "virtio-net-pci", > .property = "vectors", > .value = stringify(0), > },{ > .driver = "virtio-blk-pci", > .property = "vectors", > .value = stringify(0), > }, > { /* end of list */ } > }, > > But to really make it work, we need to take a list of each savevm format > change and put it here. Notice that several changes are needed: > - savevm infrastructure save functions don't know about version id > - devices don't know to "behave" as other version > - other things that I have probably missed > > Later, Juan.
Why do you think this the right place for it, I wonder? This describes the machine, it does not seem to have anything to do with how we migrate it. -- MST