Re: [PATCH v1 2/4] iommu: Add iommu_default_domain_free helper

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 27/02/2025 11:32 pm, Nicolin Chen wrote:
On Thu, Feb 27, 2025 at 05:03:36PM -0400, Jason Gunthorpe wrote:
On Thu, Feb 27, 2025 at 12:59:04PM -0800, Nicolin Chen wrote:
On Thu, Feb 27, 2025 at 03:50:36PM -0400, Jason Gunthorpe wrote:
On Wed, Feb 26, 2025 at 12:16:05PM -0800, Nicolin Chen wrote:
The iommu_put_dma_cookie() will be moved out of iommu_domain_free(). For a
default domain, iommu_put_dma_cookie() can be simply added to this helper.

Suggested-by: Jason Gunthorpe <jgg@xxxxxxxxxx>
Signed-off-by: Nicolin Chen <nicolinc@xxxxxxxxxx>
---
  drivers/iommu/iommu.c | 11 ++++++++---
  1 file changed, 8 insertions(+), 3 deletions(-)

Let's try to do what Robin suggested and put a private_data_owner
value in the struct then this patch isn't used, we'd just do

       if (domain->private_data_owner == DMA)
	iommu_put_dma_cookie(domain);

Instead of this change and the similar VFIO change

Ack. I assume I should go with a smaller series starting with this
"private_data_owner", and then later a bigger series for the other
bits like translation_type that you mentioned in the other thread.

That could work, you could bitfiled type and steal a few bits for
"private_data_owner" ?

Then try the sw_msi removal at the same time too?

Ack. I drafted four patches:
   iommu: Add private_data_owner to iommu_domain_free
   iommu: Turn iova_cookie to dma-iommu private pointer
   iommufd: Move iommufd_sw_msi and related functions to driver.c
   iommu: Drop sw_msi from iommu_domain

Will do some proper build tests and then wrap them up.

Ah, I spent yesterday also writing up a patch to sort things out more generally - expect to see that shortly, then we can decide what we like.

Cheers,
Robin.




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux