On Fri, Aug 09, 2024 at 12:09:03PM -0400, Peter Xu wrote: > Use the new API that can understand huge pfn mappings. > > Cc: Alex Williamson <alex.williamson@xxxxxxxxxx> > Cc: Jason Gunthorpe <jgg@xxxxxxxxxx> > Signed-off-by: Peter Xu <peterx@xxxxxxxxxx> > --- > drivers/vfio/vfio_iommu_type1.c | 16 ++++++---------- > 1 file changed, 6 insertions(+), 10 deletions(-) > > diff --git a/drivers/vfio/vfio_iommu_type1.c b/drivers/vfio/vfio_iommu_type1.c > index 0960699e7554..bf391b40e576 100644 > --- a/drivers/vfio/vfio_iommu_type1.c > +++ b/drivers/vfio/vfio_iommu_type1.c > @@ -513,12 +513,10 @@ static int follow_fault_pfn(struct vm_area_struct *vma, struct mm_struct *mm, > unsigned long vaddr, unsigned long *pfn, > bool write_fault) > { > - pte_t *ptep; > - pte_t pte; > - spinlock_t *ptl; > + struct follow_pfnmap_args args = { .vma = vma, .address = vaddr }; > int ret; > > - ret = follow_pte(vma, vaddr, &ptep, &ptl); > + ret = follow_pfnmap_start(&args); Let's add a comment here that this is not locked properly to discourage anyone from copying it. Jason