Juan Quintela wrote: > Lack of "proper" subsections. IDE is something like: > > const VMStateDescription vmstate_ide_drive = { > .version_id = 4, > .... > } > > static const VMStateDescription vmstate_bmdma = { > .name = "ide bmdma", > .version_id = 4, > ... > } > > const VMStateDescription vmstate_ide_pci = { > .name = "ide", > .version_id = 4, > .... > VMSTATE_STRUCT_ARRAY(bmdma, PCIIDEState, 2, 0, > vmstate_bmdma, BMDMAState), > VMSTATE_IDE_DRIVES(bus[0].ifs, PCIIDEState), > VMSTATE_IDE_DRIVES(bus[1].ifs, PCIIDEState), > .... > } > > > Notice that everything is at version 4. It used to be everything at > version 3. Now the problem is that when migrating from v3 -> v4. We > put in one place v3, But we only have a version number at the toplevel, > rest of "subsections" don't sent a version number. There is no way to > fix it in the general case. We can hack something around for ide, but > that will just be a hack, or we can backport marcelo change and port it > as a proper subsection (that is my plan). I expect to have time at the > end of next time to work on this. BTW, the IDE subsystem is yet lacking a proper vmstate section split-up along qdev boundaries (ie. vmstate_ide_pci should not contain drive structures). Do you plan to address this as well? Jan
Attachment:
signature.asc
Description: OpenPGP digital signature