Hello Baoqua, On Tue, 5 Aug 2025 14:23:33 +0800 Baoquan He <b...@redhat.com> wrote:
> Now everything is ready, set kasan=off can disable kasan for all > three modes. > > Signed-off-by: Baoquan He <b...@redhat.com> > --- > include/linux/kasan-enabled.h | 11 +---------- > 1 file changed, 1 insertion(+), 10 deletions(-) > > diff --git a/include/linux/kasan-enabled.h b/include/linux/kasan-enabled.h > index 32f2d19f599f..b5857e15ef14 100644 > --- a/include/linux/kasan-enabled.h > +++ b/include/linux/kasan-enabled.h > @@ -8,30 +8,21 @@ extern bool kasan_arg_disabled; > > DECLARE_STATIC_KEY_FALSE(kasan_flag_enabled); > > -#ifdef CONFIG_KASAN_HW_TAGS > - > static __always_inline bool kasan_enabled(void) > { > return static_branch_likely(&kasan_flag_enabled); > } I found mm-new build fails when CONFIG_KASAN is unset as below, and 'git bisect' points this patch. LD .tmp_vmlinux1 ld: lib/stackdepot.o:(__jump_table+0x8): undefined reference to `kasan_flag_enabled' Since kasna_flag_enabled is defined in mm/kasan/common.c, I confirmed diff like below fixes this. I think it may not be a correct fix though, since I didn't read this patchset thoroughly. diff --git a/include/linux/kasan-enabled.h b/include/linux/kasan-enabled.h index b5857e15ef14..a53d112b1020 100644 --- a/include/linux/kasan-enabled.h +++ b/include/linux/kasan-enabled.h @@ -8,11 +8,22 @@ extern bool kasan_arg_disabled; DECLARE_STATIC_KEY_FALSE(kasan_flag_enabled); +#ifdef CONFIG_KASAN + static __always_inline bool kasan_enabled(void) { return static_branch_likely(&kasan_flag_enabled); } +#else /* CONFIG_KASAN */ + +static inline bool kasan_enabled(void) +{ + return false; +} + +#endif + #ifdef CONFIG_KASAN_HW_TAGS static inline bool kasan_hw_tags_enabled(void) { [...] Thanks, SJ