summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm/kasan.h
diff options
context:
space:
mode:
authorChristophe Leroy <christophe.leroy@csgroup.eu>2020-05-19 07:48:48 +0200
committerMichael Ellerman <mpe@ellerman.id.au>2020-05-20 15:41:03 +0200
commitec97d022f621c6c850aec46d8818b49c6aae95ad (patch)
tree069683bd451176fbab5e0a2277facaf9bec6cc1d /arch/powerpc/include/asm/kasan.h
parentpowerpc/kasan: Refactor update of early shadow mappings (diff)
downloadlinux-ec97d022f621c6c850aec46d8818b49c6aae95ad.tar.xz
linux-ec97d022f621c6c850aec46d8818b49c6aae95ad.zip
powerpc/kasan: Declare kasan_init_region() weak
In order to alloc sub-arches to alloc KASAN regions using optimised methods (Huge pages on 8xx, BATs on BOOK3S, ...), declare kasan_init_region() weak. Also make kasan_init_shadow_page_tables() accessible from outside, so that it can be called from the specific kasan_init_region() functions if needed. And populate remaining KASAN address space only once performed the region mapping, to allow 8xx to allocate hugepd instead of standard page tables for mapping via 8M hugepages. Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/3c1ce419fa1b5a4171b92d7fb16455ca17e1b96d.1589866984.git.christophe.leroy@csgroup.eu
Diffstat (limited to 'arch/powerpc/include/asm/kasan.h')
-rw-r--r--arch/powerpc/include/asm/kasan.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/kasan.h b/arch/powerpc/include/asm/kasan.h
index 4769bbf7173a..107a24c3f7b3 100644
--- a/arch/powerpc/include/asm/kasan.h
+++ b/arch/powerpc/include/asm/kasan.h
@@ -34,5 +34,8 @@ static inline void kasan_init(void) { }
static inline void kasan_late_init(void) { }
#endif
+int kasan_init_shadow_page_tables(unsigned long k_start, unsigned long k_end);
+int kasan_init_region(void *start, size_t size);
+
#endif /* __ASSEMBLY */
#endif