Re: [PATCH v2 3/4] iommufd: Require DMABUF revoke semantics

From: Leon Romanovsky

Date: Mon Jan 19 2026 - 13:23:05 EST


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 <leonro@xxxxxxxxxx>
> >
> > 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 <leonro@xxxxxxxxxx>
> > ---
> > 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/a397ff1e-615f-4873-98a9-940f9c16f85c@xxxxxxx

Thanks


>
> Jason