]> git.itanic.dy.fi Git - linux-stable/commitdiff
powerpc/kasan: Fix kasan_remap_early_shadow_ro()
authorChristophe Leroy <christophe.leroy@c-s.fr>
Fri, 6 Mar 2020 15:09:40 +0000 (15:09 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 Apr 2020 14:13:48 +0000 (16:13 +0200)
[ Upstream commit af92bad615be75c6c0d1b1c5b48178360250a187 ]

At the moment kasan_remap_early_shadow_ro() does nothing, because
k_end is 0 and k_cur < 0 is always true.

Change the test to k_cur != k_end, as done in
kasan_init_shadow_page_tables()

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Fixes: cbd18991e24f ("powerpc/mm: Fix an Oops in kasan_mmu_init()")
Cc: stable@vger.kernel.org
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/4e7b56865e01569058914c991143f5961b5d4719.1583507333.git.christophe.leroy@c-s.fr
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/powerpc/mm/kasan/kasan_init_32.c

index d2bed3fcb7194ec065e107b71786797359fd8257..1169ad1b6730a3142dbe6011f19222ca12089de4 100644 (file)
@@ -101,7 +101,7 @@ static void __init kasan_remap_early_shadow_ro(void)
 
        kasan_populate_pte(kasan_early_shadow_pte, prot);
 
-       for (k_cur = k_start & PAGE_MASK; k_cur < k_end; k_cur += PAGE_SIZE) {
+       for (k_cur = k_start & PAGE_MASK; k_cur != k_end; k_cur += PAGE_SIZE) {
                pmd_t *pmd = pmd_offset(pud_offset(pgd_offset_k(k_cur), k_cur), k_cur);
                pte_t *ptep = pte_offset_kernel(pmd, k_cur);