[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v8] xen/arm: pci: introduce PCI_PASSTHROUGH Kconfig option
On 7/23/25 18:16, Stewart Hildebrand wrote: > On 7/23/25 10:59, Jan Beulich wrote: >> On 23.07.2025 16:26, Stewart Hildebrand wrote: >>> On 7/23/25 06:18, Jan Beulich wrote: >>>> On 13.06.2025 17:17, Stewart Hildebrand wrote: >>>>> --- a/xen/arch/arm/Kconfig >>>>> +++ b/xen/arch/arm/Kconfig >>>>> @@ -8,6 +8,8 @@ config ARM_64 >>>>> depends on !ARM_32 >>>>> select 64BIT >>>>> select HAS_FAST_MULTIPLY >>>>> + select HAS_VPCI_GUEST_SUPPORT if PCI_PASSTHROUGH >>>>> + select HAS_PASSTHROUGH if PCI_PASSTHROUGH >>>> >>>> As I just learned, this change (or maybe it was the "select HAS_PCI" >>>> further down) has exposed the quarantining Kconfig option prompt, which >>>> (aiui) is entirely meaningless on Arm. IOW I think further adjustments >>>> are necessary. >>> >>> Not entirely meaningless - the choice between "none" and "basic" still >>> seems relevant. Just "scratch page" quarantining hasn't been implemented >>> in any of the Arm iommu drivers. >> >> Is there support for "basic"? For x86, most of the involved code lives >> in the vendor-specific drivers, and I can't find anything related in >> Arm's. Note in particular the hook iommu_quarantine_dev_init() calls, >> which isn't provided by any of the Arm drivers afaict. > > Quoting xen/drivers/passthrough/Kconfig IOMMU_QUARANTINE_* help text: > > "... basic form, all in-flight DMA will simply be forced to encounter > IOMMU faults." > > My understanding of "basic" is that after destruction of a domU with a > PCI device assigned, the PCI device gets assigned to domIO. We have > special casing for ( d == dom_io ) in some instances, but otherwise it > has relatively little to do with the individual iommu drivers. I believe > assigning to domIO should be enough for the Arm iommus to generate > faults, since the iommu identifies the PCI device's DMA via sideband > information (AXI stream ID). Oh, and also note the commit messages in 63919fc4d1ca ("xen/arm: smmuv3: Add PCI devices support for SMMUv3") and ca8f6ffeb6e3 ("xen/arm: smmuv2: Add PCI devices support for SMMUv2") "Implement basic quarantining."
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |