From: Wen Congyang Date: Tue, 18 Dec 2012 20:22:21 +0000 (-0800) Subject: x86/mm: Fix the argument passed to sync_global_pgds() X-Git-Tag: v3.9-rc1~168^2~10 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f73568a059c3afd6323a9ee3860938df91252ee4;p=profile%2Fcommon%2Fkernel-common.git x86/mm: Fix the argument passed to sync_global_pgds() The address range of sync_global_pgds() should be [start, end], but we pass [start, end) to this function. Signed-off-by: Wen Congyang Cc: Yasuaki Ishimatsu Cc: David Rientjes Cc: Jiang Liu Cc: Minchan Kim Cc: KOSAKI Motohiro Cc: Mel Gorman Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar --- diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c index 2ead3c8..e779e0b 100644 --- a/arch/x86/mm/init_64.c +++ b/arch/x86/mm/init_64.c @@ -605,7 +605,7 @@ kernel_physical_mapping_init(unsigned long start, } if (pgd_changed) - sync_global_pgds(addr, end); + sync_global_pgds(addr, end - 1); __flush_tlb_all(); @@ -981,7 +981,7 @@ vmemmap_populate(struct page *start_page, unsigned long size, int node) } } - sync_global_pgds((unsigned long)start_page, end); + sync_global_pgds((unsigned long)start_page, end - 1); return 0; }