mirror of
https://github.com/lkl/linux.git
synced 2025-12-19 16:13:19 +09:00
kasan: remove PG_skip_kasan_poison flag
Code inspection reveals that PG_skip_kasan_poison is redundant with kasantag, because the former is intended to be set iff the latter is the match-all tag. It can also be observed that it's basically pointless to poison pages which have kasantag=0, because any pages with this tag would have been pointed to by pointers with match-all tags, so poisoning the pages would have little to no effect in terms of bug detection. Therefore, change the condition in should_skip_kasan_poison() to check kasantag instead, and remove PG_skip_kasan_poison and associated flags. Link: https://lkml.kernel.org/r/20230310042914.3805818-3-pcc@google.com Link: https://linux-review.googlesource.com/id/I57f825f2eaeaf7e8389d6cf4597c8a5821359838 Signed-off-by: Peter Collingbourne <pcc@google.com> Reviewed-by: Andrey Konovalov <andreyknvl@gmail.com> Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Evgenii Stepanov <eugenis@google.com> Cc: Vincenzo Frascino <vincenzo.frascino@arm.com> Cc: Will Deacon <will@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
committed by
Andrew Morton
parent
7eb16f23b9
commit
0a54864f8d
@@ -55,8 +55,7 @@
|
||||
#ifdef CONFIG_KASAN_HW_TAGS
|
||||
#define __def_gfpflag_names_kasan , \
|
||||
gfpflag_string(__GFP_SKIP_ZERO), \
|
||||
gfpflag_string(__GFP_SKIP_KASAN_POISON), \
|
||||
gfpflag_string(__GFP_SKIP_KASAN_UNPOISON)
|
||||
gfpflag_string(__GFP_SKIP_KASAN)
|
||||
#else
|
||||
#define __def_gfpflag_names_kasan
|
||||
#endif
|
||||
@@ -96,13 +95,6 @@
|
||||
#define IF_HAVE_PG_ARCH_X(_name)
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_KASAN_HW_TAGS
|
||||
#define IF_HAVE_PG_SKIP_KASAN_POISON(_name) \
|
||||
,{1UL << PG_##_name, __stringify(_name)}
|
||||
#else
|
||||
#define IF_HAVE_PG_SKIP_KASAN_POISON(_name)
|
||||
#endif
|
||||
|
||||
#define DEF_PAGEFLAG_NAME(_name) { 1UL << PG_##_name, __stringify(_name) }
|
||||
|
||||
#define __def_pageflag_names \
|
||||
@@ -133,8 +125,7 @@ IF_HAVE_PG_HWPOISON(hwpoison) \
|
||||
IF_HAVE_PG_IDLE(idle) \
|
||||
IF_HAVE_PG_IDLE(young) \
|
||||
IF_HAVE_PG_ARCH_X(arch_2) \
|
||||
IF_HAVE_PG_ARCH_X(arch_3) \
|
||||
IF_HAVE_PG_SKIP_KASAN_POISON(skip_kasan_poison)
|
||||
IF_HAVE_PG_ARCH_X(arch_3)
|
||||
|
||||
#define show_page_flags(flags) \
|
||||
(flags) ? __print_flags(flags, "|", \
|
||||
|
||||
Reference in New Issue
Block a user