On Thu, 2018-07-26 at 13:43 +0800, Yi Min Zhao wrote: > 在 2018/7/25 下午11:44, Andrea Bolognani 写道: > > > > > > How does the pci-bridge controller show up in the guest, if at all? > > > > > > Qemu hides pci-bridge devices and just exposes pci devices to the guest. > > > In above example, indeed, qemu will generate a pci-bridge device and it > > > will > > > be existing in pci topology. But the guest can't see it. This is very > > > special. > > > > Yeah, that's kinda problematic as it violates the principle of least > > surprise... If s390 guests can only see a flat PCI topology, then we > > should find a way to reject bridges altogether instead of allowing > > the user to create them (or even create them automatically) only for > > them not to show up in the guest. > > If we reject bridges, there would be only one pci bus that maximum > 32 pci devices could be plugged to. This kind of limitation is more > problematic IMO.
I see how that would be pretty limiting. >From the test cases I see a zpci devices, with its own uid and fid, is created for the pci-bridge as well... Is that intentional? > > > > > > Do the bus= and addr= attributes of vfio-pci and pci-bridge in the > > > > > > example above matter eg. for migration purposes? > > > > > > Do you mean we leave attribute generation for bus and addr to qemu? > > > > That would be the idea, but of course it can only work if the > > address of the underlying PCI device can change without affecting > > the guest in any way, including migration. If that's not the case, > > and the PCI address needs to be as stable as the IDs, then I don't > > think there's a way to avoid storing it in the guest XML, no matter > > how confusing that will end up looking. > > I think it relies on pci base code. Although we don't expose pci address > to the guest, any > pci device still exists PCI tree tolopogy in qemu. IIUC, this has effect > on qemu process itself. > For example, if we hotplug a pci device permanently, it will be > dynamically assigned with a > pci address, and this address might change after shutdown and start > again the guest and also > might change in destination during migration. Okay, if that's the case we'll definitely have to store the PCI address in the guest XML :( -- Andrea Bolognani / Red Hat / Virtualization -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list