| From | Luis Henriques <> | Subject | [PATCH 3.16.y-ckt 088/133] x86/mm: Initialize pmd_idx in page_table_range_init_count() | Date | Wed, 30 Sep 2015 10:50:36 +0100 |
| |
3.16.7-ckt18 -stable review patch. If anyone has any objections, please let me know.
------------------
From: Minfei Huang <mnfhuang@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@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: Luis Henriques <luis.henriques@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);
|