Index: sys/sys/cdefs.h =================================================================== RCS file: /cvsroot/src/sys/sys/cdefs.h,v retrieving revision 1.150 diff -u -r1.150 cdefs.h --- sys/sys/cdefs.h 8 Dec 2019 11:48:15 -0000 1.150 +++ sys/sys/cdefs.h 21 Mar 2020 13:39:29 -0000 @@ -38,9 +38,6 @@ #ifdef _KERNEL_OPT #include "opt_diagnostic.h" -#include "opt_kasan.h" -#include "opt_kcsan.h" -#include "opt_kmsan.h" #endif /* @@ -336,21 +333,25 @@ #define __unreachable() do {} while (/*CONSTCOND*/0) #endif -#if defined(_KERNEL) -#if __GNUC_PREREQ__(4, 9) && defined(KASAN) +#if defined(_KERNEL) || defined(_RUMPKERNEL) +#if defined(__clang__) +#define __noasan __attribute__((no_sanitize("kernel-address", "address"))) +#elif __GNUC_PREREQ__(4, 9) #define __noasan __attribute__((no_sanitize_address)) #else #define __noasan /* nothing */ #endif -#if __GNUC_PREREQ__(4, 9) && defined(KCSAN) +#if defined(__clang__) +#define __nocsan __attribute__((no_sanitize("thread"))) +#elif __GNUC_PREREQ__(4, 9) #define __nocsan __attribute__((no_sanitize_thread)) #else #define __nocsan /* nothing */ #endif -#if defined(__clang__) && defined(KMSAN) -#define __nomsan __attribute__((no_sanitize("kernel-memory"))) +#if defined(__clang__) +#define __nomsan __attribute__((no_sanitize("kernel-memory", "memory"))) #else #define __nomsan /* nothing */ #endif Index: sys/sys/cdefs_elf.h =================================================================== RCS file: /cvsroot/src/sys/sys/cdefs_elf.h,v retrieving revision 1.53 diff -u -r1.53 cdefs_elf.h --- sys/sys/cdefs_elf.h 10 Aug 2017 19:03:27 -0000 1.53 +++ sys/sys/cdefs_elf.h 21 Mar 2020 13:39:29 -0000 @@ -160,10 +160,10 @@ #ifndef __lint__ #define __link_set_make_entry(set, sym) \ static void const * const __link_set_##set##_sym_##sym \ - __section("link_set_" #set) __used = (const void *)&sym + __section("link_set_" #set) __noasan __used = (const void *)&sym #define __link_set_make_entry2(set, sym, n) \ static void const * const __link_set_##set##_sym_##sym##_##n \ - __section("link_set_" #set) __used = (const void *)&sym[n] + __section("link_set_" #set) __noasan __used = (const void *)&sym[n] #else #define __link_set_make_entry(set, sym) \ extern void const * const __link_set_##set##_sym_##sym