On Wed, 2016-07-20 at 16:09 +0200, Andrea Bolognani wrote: > > It seems that we could solve this by just changing the logic in > > qemuDomainAssignDevicePCISlots() so that when it is auto-assigning > > addresses, it always uses 00:00.0 for the USB controller when guest > > arch is ppc64. > > > > Existing guests deployed from a libvirt version using -device won't > > be affected, because we'll have recorded a PCI address for that > > in the XML and continue to use that. ie the auto-allocation logic > > won't run for them. > > > > Existing guests deployed from a libvirt version using -usb should > > then get the fixed PCI address of 00:00.0 when they upgrade to the > > fix libvirt (assuming they didn't get run with a broken libvirt > > in between). > > Mh, that could actually work! Thanks :) > > I'll try to cook up a patch tomorrow. Unfortunately Martin pointed out a problem with this plan: even though they're not actually using it, old guests have been assigned a PCI address for the USB controller. Which means we can't tell whether <controller type='usb' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </controller is an old guest that should be assigned the 00:00.0 address or a new guest that should keep using the 00:03.0 address :( -- Andrea Bolognani / Red Hat / Virtualization -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list