[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Broken PCI device passthrough, after XSA-302 fix?
Hi, On Mon, Jan 06, 2020 at 02:06:14PM +0100, Jan Beulich wrote: > On 04.01.2020 02:07, Marek Marczykowski-Górecki wrote: > > I have a multi-function PCI device, behind a PCI bridge, that normally > > I assign to a single domain. But now it fails with: > > > > (XEN) [VT-D]d14: 0000:04:00.0 owned by d0!<G><0>assign 0000:05:00.0 to > > dom14 failed (-22) > > I've tried this out in as close a setup as I could arrange for, but > not one matching your scenario. I didn't find a system with a > suitably placed (in the topology) multi-function device (had to use > a single-function one), and of course I did this on (close to) > master. No anomalies. Hence I wonder whether either of the two > differences mentioned matters, and - if, as I suspect, it's the > multi-function aspect that is relevant here - how things would have > worked at all before those recent changes. This is because I think > you should have hit the same error path even before, and it would > seem to me that the patch below might be (and have been) needed. > I think Marek confirmed in the other mail that this patch fixes the issue. Are you planning to merge this patch? Thanks, -- Pasi > Jan > > --- unstable.orig/xen/drivers/passthrough/vtd/iommu.c > +++ unstable/xen/drivers/passthrough/vtd/iommu.c > @@ -1505,7 +1505,7 @@ static int domain_context_mapping(struct > break; > > ret = domain_context_mapping_one(domain, drhd->iommu, bus, devfn, > - pci_get_pdev(seg, bus, devfn)); > + NULL); > > /* > * Devices behind PCIe-to-PCI/PCIx bridge may generate different > @@ -1515,7 +1515,7 @@ static int domain_context_mapping(struct > if ( !ret && pdev_type(seg, bus, devfn) == DEV_TYPE_PCIe2PCI_BRIDGE > && > (secbus != pdev->bus || pdev->devfn != 0) ) > ret = domain_context_mapping_one(domain, drhd->iommu, secbus, 0, > - pci_get_pdev(seg, secbus, 0)); > + NULL); > > break; > > > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |