|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Multi-bridged PCIe devices (Was: Re: iommuu/vt-d issues with LSI MegaSAS (PERC5i))
On 12/11/2013 06:32 PM, Konrad Rzeszutek Wilk wrote: On Thu, Sep 12, 2013 at 06:20:18AM +0000, Zhang, Yang Z wrote:Jan Beulich wrote on 2013-09-11:On 11.09.13 at 15:26, Gordan Bobic <gordan@xxxxxxxxxx> wrote:On Wed, 11 Sep 2013 14:22:51 +0100, "Jan Beulich" <JBeulich@xxxxxxxx> wrote:On 11.09.13 at 15:10, Gordan Bobic <gordan@xxxxxxxxxx> wrote:On Wed, 11 Sep 2013 14:03:14 +0100, "Jan Beulich" <JBeulich@xxxxxxxx> wrote:On 11.09.13 at 14:45, Gordan Bobic <gordan@xxxxxxxxxx> wrote:dmesg, xl dmesg, lspci -vvvnn and lspci -tvnn output is attached. I'll try adding one of my LSI cards and see the comparative behaviour. Right now I don't even know if the phantom device is on the SAS card or the motherboard.The Adaptec card being the only thing on bus 0f makes it pretty likely that this other device also is on that card. I guess the issue is mainly because the device itself is a PCI one, while the immediately upstream bridge (where I mean only the visible one) is PCIe. There _must_ be a PCIe-PCI bridge between them. And as long as firmware doesn't know about that bridge and the bridge doesn't properly handle config space accesses to it, such a device just can't be used with an IOMMU (without some yet to be invented workaround).I'm actually thinking about Konrad's proposed hack in that thread from 3 years ago. If the device IDs are parameterized out rather than hard-coded, then this could work in nearly the same was as xen-pciback in terms of usage. Pass the phantom device IDs as parameters to the module. Done that way it might even be considered clean enough to be fit for public consumption.Except that, short of being able to determine it via config space reads, we also need the resulting command line option to tell us that what kind of device that is.Not sure I follow. Why do we need to know the device type? I may be wrong, but this doesn't look like the same problem (phantom PCI device on the bus). Or am I missing something? As far as I can tell, the original problem was arising on cards that are PCIe, but based on a PCIX chipset, i.e. with a PCIe-PCIX bridge. Xen wasn't the only thing affected in my case - bare metal Linux kernel was also having problems with intel-iommu=1 in the kernel boot parameters. If might be worth trying that with your card to see what happens. If bare metal Linux with intel-iommu=1 works for your card, it's probably not the same problem (of course it could be similar/related). Out of interest, I noticed recently there is a xen parameter "pci-phantom", but I haven't been able to find documentation for it. Can you point me in the right direction? Does it, perchance, allow specifying the PCI slot ID of a phantom device so that IOMMU doesn't freak out when a seemingly non-existant device starts trying to do DMA? Gordan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |