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]

Thanks


> 
> Jason

Reply via email to