Le 28/05/2020 à 12:17, Christophe Leroy a écrit :
Mapping of early shadow area is implemented by using a single static page table having all entries pointing to the same early shadow page. The shadow area must therefore occupy full PGD entries. The shadow area has a size of 128Mbytes starting at 0xf8000000. With 4k pages, a PGD entry is 4Mbytes With 16k pages, a PGD entry is 64Mbytes With 64k pages, a PGD entry is 256Mbytes which is too big.
That's for 32k pages that a PGD is 256Mbytes. With 64k pages, a PGD entry is 1Gbytes which is too big. Michael, can you fix the commit log ? Thanks Christophe
Until we rework the early shadow mapping, disable KASAN when the page size is too big. Reported-by: kbuild test robot <l...@intel.com> Fixes: 2edb16efc899 ("powerpc/32: Add KASAN support") Cc: sta...@vger.kernel.org Signed-off-by: Christophe Leroy <christophe.le...@csgroup.eu> --- arch/powerpc/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index 1dfa59126fcf..066b36bf9efa 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -169,8 +169,8 @@ config PPC select HAVE_ARCH_AUDITSYSCALL select HAVE_ARCH_HUGE_VMAP if PPC_BOOK3S_64 && PPC_RADIX_MMU select HAVE_ARCH_JUMP_LABEL - select HAVE_ARCH_KASAN if PPC32 - select HAVE_ARCH_KASAN_VMALLOC if PPC32 + select HAVE_ARCH_KASAN if PPC32 && PPC_PAGE_SHIFT <= 14 + select HAVE_ARCH_KASAN_VMALLOC if PPC32 && PPC_PAGE_SHIFT <= 14 select HAVE_ARCH_KGDB select HAVE_ARCH_MMAP_RND_BITS select HAVE_ARCH_MMAP_RND_COMPAT_BITS if COMPAT