Re: [PATCH v4 0/3] KASAN support for RISC-V

From: Greentime Hu
Date: Mon Oct 28 2019 - 03:01:53 EST


Nick Hu <nickhu@xxxxxxxxxxxxx> æ 2019å10æ28æ éä äå10:41åéï
>
> KASAN is an important runtime memory debugging feature in linux kernel which can
> detect use-after-free and out-of-bounds problems.
>
> Changes in v2:
> - Remove the porting of memmove and exclude the check instead.
> - Fix some code noted by Christoph Hellwig
>
> Changes in v3:
> - Update the KASAN documentation to mention that riscv is supported.
>
> Changes in v4:
> - Correct the commit log
> - Fix the bug reported by Greentime Hu
>
> Nick Hu (3):
> kasan: No KASAN's memmove check if archs don't have it.
> riscv: Add KASAN support
> kasan: Add riscv to KASAN documentation.
>
> Documentation/dev-tools/kasan.rst | 4 +-
> arch/riscv/Kconfig | 1 +
> arch/riscv/include/asm/kasan.h | 27 ++++++++
> arch/riscv/include/asm/pgtable-64.h | 5 ++
> arch/riscv/include/asm/string.h | 9 +++
> arch/riscv/kernel/head.S | 3 +
> arch/riscv/kernel/riscv_ksyms.c | 2 +
> arch/riscv/kernel/setup.c | 5 ++
> arch/riscv/kernel/vmlinux.lds.S | 1 +
> arch/riscv/lib/memcpy.S | 5 +-
> arch/riscv/lib/memset.S | 5 +-
> arch/riscv/mm/Makefile | 6 ++
> arch/riscv/mm/kasan_init.c | 104 ++++++++++++++++++++++++++++
> mm/kasan/common.c | 2 +
> 14 files changed, 173 insertions(+), 6 deletions(-)
> create mode 100644 arch/riscv/include/asm/kasan.h
> create mode 100644 arch/riscv/mm/kasan_init.c
>
Hi Nick,

I have tested KASAN feature with test_kasan.ko based on commit
cd9e72b80090a8cd7d84a47a30a06fa92ff277d1 (tag: riscv/for-v5.4-rc3) and
it passed in Qemu and Unleashed board.
Thank you for fixing the bug. :)

Tested-by: Greentime Hu <greentime.hu@xxxxxxxxxx>