> From: Jason Gunthorpe <jgg@xxxxxxxxxx> > Sent: Thursday, August 22, 2024 10:46 PM > > These three implementations of map_pages() all succeed if a mapping is > requested with no read or write. Since they return back to __iommu_map() > leaving the mapped output as 0 it triggers an infinite loop. Therefore > nothing is using no-access protection bits. > > Further, VFIO and iommufd rely on iommu_iova_to_phys() to get back PFNs > stored by map, if iommu_map() succeeds but iommu_iova_to_phys() fails > that > will create serious bugs. > > Thus remove this never used "nothing to do" concept and just fail map > immediately. > > Fixes: e5fc9753b1a8 ("iommu/io-pgtable: Add ARMv7 short descriptor > support") > Fixes: e1d3c0fd701d ("iommu: add ARM LPAE page table allocator") > Fixes: 745ef1092bcf ("iommu/io-pgtable: Move Apple DART support to its > own file") > Signed-off-by: Jason Gunthorpe <jgg@xxxxxxxxxx> Reviewed-by: Kevin Tian <kevin.tian@xxxxxxxxx>