
On Fri, 2017-07-21 at 10:07 +0200, Andrea Bolognani wrote:
That is the main reason to fill all the values in right away. Since there apparently was a period, where a default would be used, but not recorded, it needs some trickery unfortunately. In such case you basically standardize, that the now-filled-in default model (which can't ever change) if it was not provided by the user is to be dropped from the migratable XML. Once you start assign a new default model, that then needs to be explicitly sent over, so that the migration will not be successufl unless the destination is able to use the new model. This means basically, that a missing model name becomes assigned to a particular value. That makes sense. Doesn't it also mean that we don't really need to record whether the user set the model name explicitly or not? We can just skip formatting it if it's spapr-pci-host-bridge and all versions of libvirt, past or future, will handle that correctly.
Wait, that's exactly how this patch behaves, except it's not immediately apparent because the check for the model name happens inside virDomainControllerIsPCIHostBridge() rather than being explicit. So maybe I'm still missing something? -- Andrea Bolognani / Red Hat / Virtualization