On Tue, 2017-03-07 at 09:19 +0100, Pavel Hrdina wrote: > > However, after migration is complete, the <controller> > > element has model='nec-xhci' instead of model='pci-ohci', > > which means that power cycling the guest results in > > breaking the guest ABI. > > I'm not so sure that this is an ABI change. The guest ABI is to ensure > that the same guest XML will always start the same QEMU guest. However > the PERSISTENT migration can make ABI changes because it is the same as > virsh dumpxml $domain > $domain.xml && copy the XML onto remote host > and virsh define $domain.xml. This would also change the *model*. > > If this would be considered to be guest ABI stable it would mean that > other changes done by using this flag would be wrong because they also > modifies the persistent XML during migration. I assume there are very good reasons for persistent migration to behave differently, but as a user I find it extremely surprising. Do you have any insight on the rationale behind allowing ABI changes when performing persistent migration? The only other example I could find of ABI update being used is in virDomainDefPostParseMemory(), and AFAIU adding or removing memory from a guest is not an ABI change. Did I miss other uses? -- Andrea Bolognani / Red Hat / Virtualization -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list