[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Is: pci=assign-busses blows up Xen 4.4 Was:Re: [PATCH] x86/msi: Validate the guest-identified PCI devices in pci_prepare_msix()
> But I am not sure if that is the right way of doing it. Anyhow there > was another assumption made in which 'assign-busses' crippled Xen > (see second attachment). > > 3). Trap on PCI_SECONDARY_BUS and PCI_SUBORDINATE_BUS writes and > fixup the structures. > > I hadn't attempted that but that could also be done. That way Xen > is aware of those changes and can update its PCI structures. > 4). Make Xen do the bus re-assignment. The attached patch is an interesting "solution" to the BIOS not doing the right bus-extending with SR-IOV devices. Paid good money for this motherboard and it has bugs <sigh>. (To be fair, I also saw this issue on two other Intel SandyBridge motherboard). Anyhow, with this patch I can finally use SR-IOV cards on this motherboard and it basically does what Linux 'assign-buses' does. aka I don't get this: SR-IOV: bus number out of range. Because it is all done during bootup it only runs during boot-time. It does not fix the issue if 'pci=assign-buses' is provide on the Linux kernel, but it makes the need for that parameter obsolete. A next step would have to actually delete that from the Linux line, but that seems evil. If there is interest in making this upstream in Xen I can do that- but if we want to do that I think we need to make the Xen's view of PCI devices be similar to what this patch does. That is have a 'struct pci_bus' and 'struct pci_dev' and proper linking between them. Otherwise it is quite hard to keep all of this sane. The patches have some serious case of #ifdef and skanky code, but ugh - they work for me. Attachment:
0005-xen-pci-assign-buses-Renumber-the-bus-if-there-is-a-.patch Attachment:
0006-pci-assign-buses-Suspend-resume-the-console-device-a.patch _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |