[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Xen 4.3/AMD: setup ssss:bb:dd.f for d0 failed (-ENODEV)



>>> On 22.07.13 at 14:55, Stefan Bader <stefan.bader@xxxxxxxxxxxxx> wrote:
> While testing Xen 4.3 on my AMD testbox I noticed the following output from 
> the
> hypervisor (this has no visible effect on at least simple operation):
> 
> (XEN) setup 0000:00:18.0 for d0 failed (-19)
> (XEN) setup 0000:00:18.1 for d0 failed (-19)
> (XEN) setup 0000:00:18.2 for d0 failed (-19)
> (XEN) setup 0000:00:18.3 for d0 failed (-19)
> (XEN) setup 0000:00:18.4 for d0 failed (-19)
> (XEN) setup 0000:00:19.0 for d0 failed (-19)
> (XEN) setup 0000:00:19.1 for d0 failed (-19)
> (XEN) setup 0000:00:19.2 for d0 failed (-19)
> (XEN) setup 0000:00:19.3 for d0 failed (-19)
> (XEN) setup 0000:00:19.4 for d0 failed (-19)
> 
> The PCI devices related to the output are all PCI host bridges:
> 
> 00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor HyperTransport Configuration
> 00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor Address Map
> 00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor DRAM Controller
> 00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor Miscellaneous Control
> 00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor Link Control
> 00:19.0 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor HyperTransport Configuration
> 00:19.1 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor Address Map
> 00:19.2 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor DRAM Controller
> 00:19.3 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor Miscellaneous Control
> 00:19.4 Host bridge: Advanced Micro Devices, Inc. [AMD]
>  Family 10h Processor Link Control
> 
> This all seems to be related to PCI passthrough setup started from
> xen/drivers/passthrough/vtd/iommu.c:intel_iommu_dom0_init() or
> xen/drivers/passthrough/amd/pci_amd_iommu.c:amd_iommu_dom0_init()
> 
> While the Intel code skips over bridge type entries, the AMD code has no 
> such
> exception and will fail the handler with -ENODEV when find_iommu_for_device
> fails. But I am not sure one can just compare implementations here.
> 
> Would someone have more insight to decide whether skipping host bridges in
> amd_iommu_setup_dom0_device would make sense? I do not see any bad effects
> caused by this but it does not look good and did not happen before.

Fundamentally this looks like a BIOS bug, and hence doing as you
suggest unconditionally is not an option imo. Adding code to skip
host bridges (under the assumption that they won't initiate
transactions that might require translation by the IOMMU) may be
an option if enabled only via command line option.

In any event I'd like to hear Suravee's opinion on this first.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.