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.