iommu/exynos: Tell kmemleak to ignore 2nd level page tables
authorColin Cross <ccross@android.com>
Sat, 9 May 2015 00:05:44 +0000 (17:05 -0700)
committerJoerg Roedel <jroedel@suse.de>
Mon, 11 May 2015 16:47:52 +0000 (18:47 +0200)
The pointers to the 2nd level page tables are converted to 1st level
page table entries, which means kmemleak can't find them and assumes
they have been leaked.  Call kmemleak_ignore on the 2nd level page
tables to prevent them from showing up in kmemleak reports.

Signed-off-by: Colin Cross <ccross@android.com>
Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/exynos-iommu.c

index 3e898504a7c45aee654857ab946d64380a1a1d0f..e54c1befc193d814164f06437f591734bb8fd01a 100644 (file)
@@ -862,6 +862,7 @@ static sysmmu_pte_t *alloc_lv2entry(struct exynos_iommu_domain *priv,
                        return ERR_PTR(-ENOMEM);
 
                *sent = mk_lv1ent_page(virt_to_phys(pent));
+               kmemleak_ignore(pent);
                *pgcounter = NUM_LV2ENTRIES;
                pgtable_flush(pent, pent + NUM_LV2ENTRIES);
                pgtable_flush(sent, sent + 1);