Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-28 Thread Jacob Pan
Hi BaoLu, On Fri, 18 Mar 2022 20:43:54 +0800, Lu Baolu wrote: > On 2022/3/15 13:07, Jacob Pan wrote: > > DMA mapping API is the de facto standard for in-kernel DMA. It operates > > on a per device/RID basis which is not PASID-aware. > > > > Some modern devices such as Intel Data Streaming

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-18 Thread Lu Baolu
On 2022/3/15 13:07, Jacob Pan wrote: DMA mapping API is the de facto standard for in-kernel DMA. It operates on a per device/RID basis which is not PASID-aware. Some modern devices such as Intel Data Streaming Accelerator, PASID is required for certain work submissions. To allow such devices

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-16 Thread Jason Gunthorpe via iommu
On Wed, Mar 16, 2022 at 08:41:27AM +, Tian, Kevin wrote: > 1) When the kernel wants a more scalable way of using IDXD e.g. having > multiple CPUs simultaneously submitting works in a lockless way to a > shared work queue via a new instruction (ENQCMD) which carries > PASID. IMHO the

RE: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-16 Thread Tian, Kevin
> From: Jacob Pan > Sent: Wednesday, March 16, 2022 5:24 AM > > Hi Jason, > > On Tue, 15 Mar 2022 14:05:07 -0300, Jason Gunthorpe > wrote: > > > On Tue, Mar 15, 2022 at 09:31:35AM -0700, Jacob Pan wrote: > > > > > > IMHO it is a device mis-design of IDXD to require all DMA be PASID > > > >

RE: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-16 Thread Tian, Kevin
> From: Jason Gunthorpe > Sent: Tuesday, March 15, 2022 10:22 PM > > On Tue, Mar 15, 2022 at 11:16:41AM +, Robin Murphy wrote: > > On 2022-03-15 05:07, Jacob Pan wrote: > > > DMA mapping API is the de facto standard for in-kernel DMA. It operates > > > on a per device/RID basis which is not

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-15 Thread Jason Gunthorpe via iommu
On Tue, Mar 15, 2022 at 09:38:10AM -0700, Jacob Pan wrote: > > > +int iommu_enable_pasid_dma(struct device *dev, ioasid_t *pasid) > > > +{ > > > + struct iommu_domain *dom; > > > + ioasid_t id, max; > > > + int ret; > > > + > > > + dom = iommu_get_domain_for_dev(dev); > > > + if (!dom || !dom->ops

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-15 Thread Jacob Pan
Hi Jason, On Tue, 15 Mar 2022 14:05:07 -0300, Jason Gunthorpe wrote: > On Tue, Mar 15, 2022 at 09:31:35AM -0700, Jacob Pan wrote: > > > > IMHO it is a device mis-design of IDXD to require all DMA be PASID > > > tagged. Devices should be able to do DMA on their RID when the PCI > > > IDXD

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-15 Thread Jason Gunthorpe via iommu
On Tue, Mar 15, 2022 at 09:31:35AM -0700, Jacob Pan wrote: > > IMHO it is a device mis-design of IDXD to require all DMA be PASID > > tagged. Devices should be able to do DMA on their RID when the PCI > IDXD can do DMA w/ RID, the PASID requirement is only for shared WQ where > ENQCMDS is used.

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-15 Thread Jacob Pan
Hi Jason, On Tue, 15 Mar 2022 11:35:35 -0300, Jason Gunthorpe wrote: > On Mon, Mar 14, 2022 at 10:07:09PM -0700, Jacob Pan wrote: > > DMA mapping API is the de facto standard for in-kernel DMA. It operates > > on a per device/RID basis which is not PASID-aware. > > > > Some modern devices such

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-15 Thread Jacob Pan
Hi Jason, On Tue, 15 Mar 2022 11:22:16 -0300, Jason Gunthorpe wrote: > On Tue, Mar 15, 2022 at 11:16:41AM +, Robin Murphy wrote: > > On 2022-03-15 05:07, Jacob Pan wrote: > > > DMA mapping API is the de facto standard for in-kernel DMA. It > > > operates on a per device/RID basis which is

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-15 Thread Jason Gunthorpe via iommu
On Mon, Mar 14, 2022 at 10:07:09PM -0700, Jacob Pan wrote: > DMA mapping API is the de facto standard for in-kernel DMA. It operates > on a per device/RID basis which is not PASID-aware. > > Some modern devices such as Intel Data Streaming Accelerator, PASID is > required for certain work

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-15 Thread Jason Gunthorpe via iommu
On Tue, Mar 15, 2022 at 11:16:41AM +, Robin Murphy wrote: > On 2022-03-15 05:07, Jacob Pan wrote: > > DMA mapping API is the de facto standard for in-kernel DMA. It operates > > on a per device/RID basis which is not PASID-aware. > > > > Some modern devices such as Intel Data Streaming

Re: [PATCH v2 5/8] iommu: Add PASID support for DMA mapping API users

2022-03-15 Thread Robin Murphy
On 2022-03-15 05:07, Jacob Pan wrote: DMA mapping API is the de facto standard for in-kernel DMA. It operates on a per device/RID basis which is not PASID-aware. Some modern devices such as Intel Data Streaming Accelerator, PASID is required for certain work submissions. To allow such devices