[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 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).
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |