Commit-ID: 57b44409a2f8ce0c7f923e55f3050428342bbd39 Gitweb: http://git.kernel.org/tip/57b44409a2f8ce0c7f923e55f3050428342bbd39 Author: Vegard Nossum <vegard.nossum@xxxxxxxxx> AuthorDate: Sat, 28 Feb 2009 13:21:59 +0100 Commit: Vegard Nossum <vegard.nossum@xxxxxxxxx> CommitDate: Sat, 28 Feb 2009 14:02:40 +0100 x86: don't track page tables with kmemcheck This fixes a "Fatal error" in kmemcheck, as we need to walk the page tables inside the kmemcheck page fault handler (and take a recursive page fault -- ouch). Signed-off-by: Vegard Nossum <vegard.nossum@xxxxxxxxx> --- arch/x86/mm/init_64.c | 4 ++-- arch/x86/mm/pageattr.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c index 957e775..3003b5f 100644 --- a/arch/x86/mm/init_64.c +++ b/arch/x86/mm/init_64.c @@ -154,7 +154,7 @@ static __ref void *spp_getpage(void) void *ptr; if (after_bootmem) - ptr = (void *) get_zeroed_page(GFP_ATOMIC); + ptr = (void *) get_zeroed_page(GFP_ATOMIC | __GFP_NOTRACK); else ptr = alloc_bootmem_pages(PAGE_SIZE); @@ -301,7 +301,7 @@ static __ref void *alloc_low_page(unsigned long *phys) void *adr; if (after_bootmem) { - adr = (void *)get_zeroed_page(GFP_ATOMIC); + adr = (void *)get_zeroed_page(GFP_ATOMIC | __GFP_NOTRACK); *phys = __pa(adr); return adr; diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c index 8253bc9..4629a87 100644 --- a/arch/x86/mm/pageattr.c +++ b/arch/x86/mm/pageattr.c @@ -464,7 +464,7 @@ static int split_large_page(pte_t *kpte, unsigned long address) if (!debug_pagealloc) spin_unlock(&cpa_lock); - base = alloc_pages(GFP_KERNEL, 0); + base = alloc_pages(GFP_KERNEL | __GFP_NOTRACK, 0); if (!debug_pagealloc) spin_lock(&cpa_lock); if (!base) -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html