summaryrefslogtreecommitdiffstats
path: root/arch/x86/mm
diff options
context:
space:
mode:
authorMinfei Huang <mnfhuang@gmail.com>2015-07-12 14:18:42 +0200
committerThomas Gleixner <tglx@linutronix.de>2015-07-20 23:14:47 +0200
commit9962eea9e55f797f05f20ba6448929cab2a9f018 (patch)
tree7a5f5a06d2cf639784ec88b770990c32c594fd97 /arch/x86/mm
parentx86/mm/pat, drivers/infiniband/ipath: Use arch_phys_wc_add() and require PAT ... (diff)
downloadlinux-9962eea9e55f797f05f20ba6448929cab2a9f018.tar.xz
linux-9962eea9e55f797f05f20ba6448929cab2a9f018.zip
x86/mm: Initialize pmd_idx in page_table_range_init_count()
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>
Diffstat (limited to 'arch/x86/mm')
-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 c8140e12816a..c23ab1ee3a9a 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);