|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] iommuu/vt-d issues with LSI MegaSAS (PERC5i)
Konrad Rzeszutek Wilk wrote: On Wed, Jun 02, 2010 at 03:05:19PM +0800, Weidong Han wrote:Pasi Kärkkäinen wrote:I see. all devices are assigned to dom0 in booting. It just needs to map 05:08.0 as well when map 05:0e.0 in domain_context_mapping.On Wed, Jun 02, 2010 at 09:23:37AM +0800, Weidong Han wrote:This PCI-x card is not suitable for assignment. It contains an invisible device 05:08.0 (lspci cannot show it), but this invisible device won't be mapped by VT-d because VT-d engine doesn't know this device, so you can see the DMAR faults on it. One workaround is to hard code to map 05:08.0 when assign 05:0e.0. BTW, PCIe LSI card don't have this problem.Note that this problem happens when booting up dom0..Hey Weidong, Thank you the explanation. I am not that familiar with the VT-D chipset, but it seems that this issue also appears with CardBus controllers: http://lkml.org/lkml/2010/5/22/69 ? For this device, the problem should also appear with the newer kernelswithout using the Hypervisor and with CONFIG_DMAR enabled, right? yes. Your below code only make it work for dom0 by calling lsi_hack_init. but if you want to assign it to guest, it still cannot work. You can implement a a simple temporarily workaround like this:Am I to understand that the workaround you are proposing is doing something akin to this:
diff -r 2cd58d7d5db9 xen/drivers/passthrough/vtd/iommu.c
--- a/xen/drivers/passthrough/vtd/iommu.c Tue Jun 01 20:40:34 2010 -0400
+++ b/xen/drivers/passthrough/vtd/iommu.c Wed Jun 02 14:09:37 2010 -0400
@@ -1339,6 +1339,15 @@ static int domain_context_mapping(struct
if ( ret )
break;
+ /* NB. LSI workaround */
+ if ( bus == 0x05 && PCI_SLOT(devfn) == 0x0e && PCI_FUNC(devfn)
== 0x0 )
+ {
+ ret = domain_context_mapping_one(domain, drhd->iommu,
+ 0x05, PCI_DEVFN(8, 0));
+ if ( ret )
+ break;
+ }
+
if ( find_upstream_bridge(&bus, &devfn, &secbus) < 1 )
break;
_______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |