[PATCH 1/2] powerpc: iommu: Bring back table group release_ownership() call

Timothy Pearson tpearson at raptorengineering.com
Sat Jan 27 02:39:56 AEDT 2024



----- Original Message -----
> From: "Jason Gunthorpe" <jgg at ziepe.ca>
> To: "Timothy Pearson" <tpearson at raptorengineering.com>
> Cc: "Shivaprasad G Bhat" <sbhat at linux.ibm.com>, "iommu" <iommu at lists.linux.dev>, "linuxppc-dev"
> <linuxppc-dev at lists.ozlabs.org>, "linux-kernel" <linux-kernel at vger.kernel.org>, "Michael Ellerman"
> <mpe at ellerman.id.au>, "npiggin" <npiggin at gmail.com>, "christophe leroy" <christophe.leroy at csgroup.eu>, "aneesh kumar"
> <aneesh.kumar at kernel.org>, "naveen n rao" <naveen.n.rao at linux.ibm.com>, "jroedel" <jroedel at suse.de>, "aik"
> <aik at amd.com>, "bgray" <bgray at linux.ibm.com>, "Greg Kroah-Hartman" <gregkh at linuxfoundation.org>, "gbatra"
> <gbatra at linux.vnet.ibm.com>, "vaibhav" <vaibhav at linux.ibm.com>
> Sent: Friday, January 26, 2024 9:38:06 AM
> Subject: Re: [PATCH 1/2] powerpc: iommu: Bring back table group release_ownership() call

> On Fri, Jan 26, 2024 at 09:29:55AM -0600, Timothy Pearson wrote:
>> > On Fri, Jan 26, 2024 at 08:43:12PM +0530, Shivaprasad G Bhat wrote:
>> >> > Also, is there any chance someone can work on actually fixing this to
>> >> > be a proper iommu driver? I think that will become important for power
>> >> > to use the common dma_iommu code in the next year...
>> >> We are looking into it.
>> > 
>> > Okay, let me know, I can possibly help make parts of this happen
>> > 
>> > power is the last still-current architecture to be outside the modern
>> > IOMMU and DMA API design and I'm going to start proposing things that
>> > will not be efficient on power because of this.
>> 
>> I can get development resources on this fairly rapidly, including
>> testing.  We should figure out the best way forward and how to deal
>> with the VFIO side of things, even if that's a rewrite at the end of
>> the day the machine-specific codebase isn't *that* large for our two
>> target flavors (64-bit PowerNV and 64-bit pSeries).
> 
> I have a feeling the way forward is to just start a power driver under
> drivers/iommu/ and use kconfig to make the user exclusively select
> either the legacy arch or the modern iommu.
> 
> Get that working to a level where dma_iommu is happy.
> 
> Get iommufd support in the new driver good enough to run your
> application.
> 
> Just forget about the weird KVM and SPAPR stuff, leave it under the
> kconfig of the old code and nobody will run it. Almost nobody already
> runs it, apparently.

We actually use QEMU/KVM/VFIO extensively at Raptor, so need the support and need it to be performant...

> Remove it in a few years
> 
> From what I remember the code under the arch directory is already very
> nearly almost an iommu driver. I think someone could fairly quickly
> get to something working and using dma_iommu.c. If s390 is any
> experience there is some benchmarking and tweaking to get performance
> equal to the arch's tweaked dma_iommu copy.
> 
> Jason


More information about the Linuxppc-dev mailing list