[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] docs: fusa: Add requirements for Device Passthrough
Hi Bertrand, On 09/10/2024 07:30, Bertrand Marquis wrote: Hi Stefano,On 9 Oct 2024, at 00:46, Stefano Stabellini <sstabellini@xxxxxxxxxx> wrote: On Tue, 8 Oct 2024, Oleksandr Tyshchenko wrote:On 7 Oct 2024, at 20:55, Oleksandr Tyshchenko <olekstysh@xxxxxxxxx> wrote: + +Rationale: + +Comments: + +Covers: + - `XenProd~device_passthrough~1` + +Assign PCI device to domain (with IOMMU) +---------------------------------------- + +`XenSwdgn~passthrough_assign_pci_device_with_iommu~1` + +Description: +Xen shall assign a specified PCI device (always implied as DMA-capable) to +a domain during its creation using passthrough (partial) device tree on Arm64 +and Hyperlaunch device tree on AMD-x86. The physical device to be assigned is +protected by the IOMMU.This is a very long and complex requirement. I would suggest to split it in 3: - generic: Xen shall support assign PCI devices to domains. - arm64 one: Xen shall assign PCI devices based on device tree (explain how this is configured in dts) - amd: xxxx based on hyperlaunchI agree, will split, but ...- Xen shall use the IOMMU to enforce DMA operations done by a PCI device assigned to a domain to be restricted to the memory of the given domain.... does this need to be a separate 4th requirement here (and for the similar requirement for the platform device down the document) or this sentence is meant to be added to all resulting generic/arm64/amd requirements?This is not specific to PCI, though? The generic requirement is "Xen shall use the IOMMU to enforce DMA operations done by a DMA-capable device assigned to a domain to be restricted to the memory of the given domain". I think it is also OK to both have a PCI-specific and a non-PCI-specific requirement for that, I just wanted to mention that it doesn't look like something to PCI-specific.I think we should completely abstract out the DMA engine problem as it is not specific to a PCI or not device but to any DMA capable stuff. +1 Maybe the same also goes for interrupts and how those are assigned or forwarded or not to a domain (attached or not to a device). I am not sure we can abstract this one because:* For platform devices, we should be able to support SPIs and MSI(-x) (only the former is so far). * For PCI devices, at least on Arm, AFAIR, we only intend to support MSI(-x). Cheers, -- Julien Grall
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |