Răsfoiți Sursa

iommu/omap: Fix 'no page for' debug message in flush_iotlb_page()

The flush_iotlb_page() function prints a debug message when no
corresponding page was found in the TLB. That condition is incorrectly
checked and always resolves to true, given that the for_each_iotlb_cr()
loop is never interrupted and always reaches obj->nr_tlb_entries.

Given that we can't have two TLB entries for the same VA, break from the
loop when a match is found.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Suman Anna <s-anna@ti.com>
Laurent Pinchart 11 ani în urmă
părinte
comite
f7129a0e4d
1 a modificat fișierele cu 1 adăugiri și 0 ștergeri
  1. 1 0
      drivers/iommu/omap-iommu.c

+ 1 - 0
drivers/iommu/omap-iommu.c

@@ -394,6 +394,7 @@ static void flush_iotlb_page(struct omap_iommu *obj, u32 da)
 				__func__, start, da, bytes);
 			iotlb_load_cr(obj, &cr);
 			iommu_write_reg(obj, 1, MMU_FLUSH_ENTRY);
+			break;
 		}
 	}
 	pm_runtime_put_sync(obj->dev);