]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
iommufd: Add dma_buf_pin()
authorLeon Romanovsky <leonro@nvidia.com>
Sat, 31 Jan 2026 05:34:18 +0000 (07:34 +0200)
committerChristian König <christian.koenig@amd.com>
Mon, 23 Feb 2026 18:51:41 +0000 (19:51 +0100)
commit8c5f9645c3893f0db679d9affe4fe4e665b990dd
tree559864b5593de3697db87bd902482827b9255544
parent6ffe939bf94fbbeaaa4050a0e9c22820e959b15f
iommufd: Add dma_buf_pin()

IOMMUFD relies on a private protocol with VFIO, and this always operated
in pinned mode.

Now that VFIO can support pinned importers update IOMMUFD to invoke the
normal dma-buf flow to request pin.

This isn't enough to allow IOMMUFD to work with other exporters, it still
needs a way to get the physical address list which is another series.

IOMMUFD supports the defined revoke semantics. It immediately stops and
fences access to the memory inside it's invalidate_mappings() callback,
and it currently doesn't use scatterlists so doesn't call map/unmap at
all.

It is expected that a future revision can synchronously call unmap from
the move_notify callback as well.

Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Acked-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Christian König <christian.koenig@amd.com>
Link: https://lore.kernel.org/r/20260131-dmabuf-revoke-v7-8-463d956bd527@nvidia.com
drivers/iommu/iommufd/pages.c