Le 18/05/2022 à 12:03, Paul Mackerras a écrit : > This patch series implements KASAN on 64-bit POWER with radix MMU, > such as POWER9 or POWER10. Daniel Axtens posted previous versions of > these patches, but is no longer working on KASAN, and I have been > asked to get them ready for inclusion. > > Because of various technical difficulties, mostly around the need to > allow for code that runs in real mode, we only support "outline" mode > (as opposed to "inline" mode), where the compiler adds a call to > a checking procedure before every store to memory. > > This series has known deficiencies, specifically that the kernel will > crash on boot on a HPT system, and that out-of-bounds accesses to > module global data are not caught (which leads to one of the KASAN > tests failing). > > v2: Split the large patch 3/3 of the previous series into three > patches and addressed review comments; put the generic documentation > changes in a separate patch at the end of the series; removed the RFC > tag. > > Comments welcome.
The series looks good to me. Maybe patch 3 should go after patches 4 and 5 which are preparation patches. Christophe > > Paul. > > Documentation/dev-tools/kasan.rst | 7 +- > Documentation/powerpc/kasan.txt | 58 ++++++++++++ > arch/powerpc/Kconfig | 5 +- > arch/powerpc/Kconfig.debug | 3 +- > arch/powerpc/include/asm/book3s/64/hash.h | 4 + > arch/powerpc/include/asm/book3s/64/pgtable.h | 3 + > arch/powerpc/include/asm/book3s/64/radix.h | 12 ++- > arch/powerpc/include/asm/interrupt.h | 52 ++++++++--- > arch/powerpc/include/asm/kasan.h | 22 +++++ > arch/powerpc/kernel/Makefile | 11 +++ > arch/powerpc/kernel/smp.c | 22 ++--- > arch/powerpc/kernel/traps.c | 6 +- > arch/powerpc/kexec/Makefile | 2 + > arch/powerpc/kvm/Makefile | 5 + > arch/powerpc/lib/Makefile | 3 + > arch/powerpc/mm/book3s64/Makefile | 9 ++ > arch/powerpc/mm/kasan/Makefile | 3 +- > .../mm/kasan/{kasan_init_32.c => init_32.c} | 0 > arch/powerpc/mm/kasan/init_book3s_64.c | 103 > +++++++++++++++++++++ > arch/powerpc/mm/ptdump/ptdump.c | 3 +- > arch/powerpc/platforms/Kconfig.cputype | 1 + > arch/powerpc/platforms/powernv/Makefile | 8 ++ > arch/powerpc/platforms/powernv/smp.c | 2 +- > arch/powerpc/platforms/pseries/Makefile | 6 ++ > arch/powerpc/sysdev/xics/xics-common.c | 4 +- > arch/powerpc/sysdev/xive/common.c | 4 +- > 26 files changed, 320 insertions(+), 38 deletions(-)