Message ID | 20220329124017.737571-13-glider@google.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Add KernelMemorySanitizer infrastructure | expand |
On Tue, 29 Mar 2022 at 14:41, Alexander Potapenko <glider@google.com> wrote: > > kcov used to be broken prior to Clang 11, but right now that version is > already the minimum required to build with KCSAN, because no prior > compiler has "-tsan-distinguish-volatile=1". > > Therefore KCSAN_KCOV_BROKEN is not needed anymore. > > Suggested-by: Marco Elver <elver@google.com> > Signed-off-by: Alexander Potapenko <glider@google.com> FYI, this is superseded by https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b027471adaf955efde6153d67f391fe1604b7292 > --- > Link: https://linux-review.googlesource.com/id/Ida287421577f37de337139b5b5b9e977e4a6fee2 > --- > lib/Kconfig.kcsan | 11 ----------- > 1 file changed, 11 deletions(-) > > diff --git a/lib/Kconfig.kcsan b/lib/Kconfig.kcsan > index 63b70b8c55519..de022445fbba5 100644 > --- a/lib/Kconfig.kcsan > +++ b/lib/Kconfig.kcsan > @@ -10,21 +10,10 @@ config HAVE_KCSAN_COMPILER > For the list of compilers that support KCSAN, please see > <file:Documentation/dev-tools/kcsan.rst>. > > -config KCSAN_KCOV_BROKEN > - def_bool KCOV && CC_HAS_SANCOV_TRACE_PC > - depends on CC_IS_CLANG > - depends on !$(cc-option,-Werror=unused-command-line-argument -fsanitize=thread -fsanitize-coverage=trace-pc) > - help > - Some versions of clang support either KCSAN and KCOV but not the > - combination of the two. > - See https://bugs.llvm.org/show_bug.cgi?id=45831 for the status > - in newer releases. > - > menuconfig KCSAN > bool "KCSAN: dynamic data race detector" > depends on HAVE_ARCH_KCSAN && HAVE_KCSAN_COMPILER > depends on DEBUG_KERNEL && !KASAN > - depends on !KCSAN_KCOV_BROKEN > select STACKTRACE > help > The Kernel Concurrency Sanitizer (KCSAN) is a dynamic > -- > 2.35.1.1021.g381101b075-goog >
diff --git a/lib/Kconfig.kcsan b/lib/Kconfig.kcsan index 63b70b8c55519..de022445fbba5 100644 --- a/lib/Kconfig.kcsan +++ b/lib/Kconfig.kcsan @@ -10,21 +10,10 @@ config HAVE_KCSAN_COMPILER For the list of compilers that support KCSAN, please see <file:Documentation/dev-tools/kcsan.rst>. -config KCSAN_KCOV_BROKEN - def_bool KCOV && CC_HAS_SANCOV_TRACE_PC - depends on CC_IS_CLANG - depends on !$(cc-option,-Werror=unused-command-line-argument -fsanitize=thread -fsanitize-coverage=trace-pc) - help - Some versions of clang support either KCSAN and KCOV but not the - combination of the two. - See https://bugs.llvm.org/show_bug.cgi?id=45831 for the status - in newer releases. - menuconfig KCSAN bool "KCSAN: dynamic data race detector" depends on HAVE_ARCH_KCSAN && HAVE_KCSAN_COMPILER depends on DEBUG_KERNEL && !KASAN - depends on !KCSAN_KCOV_BROKEN select STACKTRACE help The Kernel Concurrency Sanitizer (KCSAN) is a dynamic
kcov used to be broken prior to Clang 11, but right now that version is already the minimum required to build with KCSAN, because no prior compiler has "-tsan-distinguish-volatile=1". Therefore KCSAN_KCOV_BROKEN is not needed anymore. Suggested-by: Marco Elver <elver@google.com> Signed-off-by: Alexander Potapenko <glider@google.com> --- Link: https://linux-review.googlesource.com/id/Ida287421577f37de337139b5b5b9e977e4a6fee2 --- lib/Kconfig.kcsan | 11 ----------- 1 file changed, 11 deletions(-)