mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 01:49:46 +00:00
Revert "powerpc/kasan: Fix shadow pages allocation failure"
commitb506923ee4upstream. This reverts commitd2a91cef9b. This commit moved too much work in kasan_init(). The allocation of shadow pages has to be moved for the reason explained in that patch, but the allocation of page tables still need to be done before switching to the final hash table. First revert the incorrect commit, following patch redoes it properly. Fixes:d2a91cef9b("powerpc/kasan: Fix shadow pages allocation failure") Cc: stable@vger.kernel.org Reported-by: Erhard F. <erhard_f@mailbox.org> Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://bugzilla.kernel.org/show_bug.cgi?id=208181 Link: https://lore.kernel.org/r/3667deb0911affbf999b99f87c31c77d5e870cd2.1593690707.git.christophe.leroy@csgroup.eu Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
1511086bb9
commit
d4622ea488
@@ -27,10 +27,12 @@
|
||||
|
||||
#ifdef CONFIG_KASAN
|
||||
void kasan_early_init(void);
|
||||
void kasan_mmu_init(void);
|
||||
void kasan_init(void);
|
||||
void kasan_late_init(void);
|
||||
#else
|
||||
static inline void kasan_init(void) { }
|
||||
static inline void kasan_mmu_init(void) { }
|
||||
static inline void kasan_late_init(void) { }
|
||||
#endif
|
||||
|
||||
|
||||
@@ -170,6 +170,8 @@ void __init MMU_init(void)
|
||||
btext_unmap();
|
||||
#endif
|
||||
|
||||
kasan_mmu_init();
|
||||
|
||||
setup_kup();
|
||||
|
||||
/* Shortly after that, the entire linear mapping will be available */
|
||||
|
||||
@@ -131,7 +131,7 @@ static void __init kasan_unmap_early_shadow_vmalloc(void)
|
||||
flush_tlb_kernel_range(k_start, k_end);
|
||||
}
|
||||
|
||||
static void __init kasan_mmu_init(void)
|
||||
void __init kasan_mmu_init(void)
|
||||
{
|
||||
int ret;
|
||||
struct memblock_region *reg;
|
||||
@@ -159,8 +159,6 @@ static void __init kasan_mmu_init(void)
|
||||
|
||||
void __init kasan_init(void)
|
||||
{
|
||||
kasan_mmu_init();
|
||||
|
||||
kasan_remap_early_shadow_ro();
|
||||
|
||||
clear_page(kasan_early_shadow_page);
|
||||
|
||||
Reference in New Issue
Block a user