On Mon, Jan 19, 2026 at 08:23:00PM +0200, Leon Romanovsky wrote: > On Mon, Jan 19, 2026 at 12:59:51PM -0400, Jason Gunthorpe wrote: > > On Sun, Jan 18, 2026 at 02:08:47PM +0200, Leon Romanovsky wrote: > > > From: Leon Romanovsky <[email protected]> > > > > > > IOMMUFD does not support page fault handling, and after a call to > > > .invalidate_mappings() all mappings become invalid. Ensure that > > > the IOMMUFD DMABUF importer is bound to a revoke‑aware DMABUF exporter > > > (for example, VFIO). > > > > > > Signed-off-by: Leon Romanovsky <[email protected]> > > > --- > > > drivers/iommu/iommufd/pages.c | 9 ++++++++- > > > 1 file changed, 8 insertions(+), 1 deletion(-) > > > > > > diff --git a/drivers/iommu/iommufd/pages.c b/drivers/iommu/iommufd/pages.c > > > index 76f900fa1687..a5eb2bc4ef48 100644 > > > --- a/drivers/iommu/iommufd/pages.c > > > +++ b/drivers/iommu/iommufd/pages.c > > > @@ -1501,16 +1501,22 @@ static int iopt_map_dmabuf(struct iommufd_ctx > > > *ictx, struct iopt_pages *pages, > > > mutex_unlock(&pages->mutex); > > > } > > > > > > - rc = sym_vfio_pci_dma_buf_iommufd_map(attach, &pages->dmabuf.phys); > > > + rc = dma_buf_pin(attach); > > > if (rc) > > > goto err_detach; > > > > > > + rc = sym_vfio_pci_dma_buf_iommufd_map(attach, &pages->dmabuf.phys); > > > + if (rc) > > > + goto err_unpin; > > > + > > > dma_resv_unlock(dmabuf->resv); > > > > > > /* On success iopt_release_pages() will detach and put the dmabuf. */ > > > pages->dmabuf.attach = attach; > > > return 0; > > > > Don't we need an explicit unpin after unmapping? > > Yes, but this patch is going to be dropped in v3 because of this > suggestion. > https://lore.kernel.org/all/[email protected]
That's not right, that suggestion is about changing VFIO. iommufd must still act as a pinning importer! Jason
