[PATCH 3.16.y-ckt 088/133] x86/mm: Initialize pmd_idx in page_table_range_init_count()
Luis Henriques
luis.henriques at canonical.com
Wed Sep 30 09:50:36 UTC 2015
3.16.7-ckt18 -stable review patch. If anyone has any objections, please let me know.
------------------
From: Minfei Huang <mnfhuang at gmail.com>
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 at gmail.com>
Cc: tony.luck at intel.com
Cc: wangnan0 at huawei.com
Cc: david.vrabel at citrix.com
Reviewed-by: yinghai at kernel.org
Link: http://lkml.kernel.org/r/1436703522-29552-1-git-send-email-mhuang@redhat.com
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Signed-off-by: Luis Henriques <luis.henriques at canonical.com>
---
arch/x86/mm/init_32.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
index e39504878aec..a7b5b3071072 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);
More information about the kernel-team
mailing list