summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMinfei Huang <mnfhuang@gmail.com>2015-07-12 20:18:42 +0800
committerJiri Slaby <jslaby@suse.cz>2015-09-30 11:00:08 +0200
commita6a47b4077106e462d40d162e858f26d2c84d393 (patch)
treefccf787218683ab4353d80997ce9d2271b4b2f89
parentbb64a76e58bac72537e46a8e334afaaaf26439cc (diff)
x86/mm: Initialize pmd_idx in page_table_range_init_count()
commit 9962eea9e55f797f05f20ba6448929cab2a9f018 upstream. The variable pmd_idx is not initialized for the first iteration of the for loop. Assign the proper value which indexes the start address. Fixes: 719272c45b82 'x86, mm: only call early_ioremap_page_table_range_init() once' Signed-off-by: Minfei Huang <mnfhuang@gmail.com> Cc: tony.luck@intel.com Cc: wangnan0@huawei.com Cc: david.vrabel@citrix.com Reviewed-by: yinghai@kernel.org Link: http://lkml.kernel.org/r/1436703522-29552-1-git-send-email-mhuang@redhat.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
-rw-r--r--arch/x86/mm/init_32.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
index 4287f1ffba7e..948e91b731a2 100644
--- a/arch/x86/mm/init_32.c
+++ b/arch/x86/mm/init_32.c
@@ -137,6 +137,7 @@ page_table_range_init_count(unsigned long start, unsigned long end)
vaddr = start;
pgd_idx = pgd_index(vaddr);
+ pmd_idx = pmd_index(vaddr);
for ( ; (pgd_idx < PTRS_PER_PGD) && (vaddr != end); pgd_idx++) {
for (; (pmd_idx < PTRS_PER_PMD) && (vaddr != end);