aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Elver <elver@google.com>2020-08-04 20:07:29 +0200
committerDmitry Vyukov <dvyukov@google.com>2020-08-04 21:39:55 +0200
commit02034dac31a9c4dfecfa163f445ef1921c442268 (patch)
tree6e98463415eb879d1242e28dc221b9ceb9da78fe
parent43f1389ddccb58a4c1a335db9c8c93a622572671 (diff)
dashboard/config: select KCSAN_VERBOSE in KCSAN config
In the KCSAN config, enable KCSAN_VERBOSE to generate better reports, that include the locks held and the IRQ trace events for each thread. The option requires PROVE_LOCKING, which comes with some performance cost.
-rw-r--r--dashboard/config/bits-kcsan.config5
-rw-r--r--dashboard/config/upstream-kcsan.config23
2 files changed, 19 insertions, 9 deletions
diff --git a/dashboard/config/bits-kcsan.config b/dashboard/config/bits-kcsan.config
index 9c86ace2e..faa6f7ffb 100644
--- a/dashboard/config/bits-kcsan.config
+++ b/dashboard/config/bits-kcsan.config
@@ -5,8 +5,12 @@
# CONFIG_KASAN is not set
CONFIG_VMAP_STACK=y
+# Requirement for CONFIG_KCSAN_VERBOSE:
+CONFIG_PROVE_LOCKING=y
+
# Enable KCSAN:
CONFIG_KCSAN=y
+CONFIG_KCSAN_VERBOSE=y
# CONFIG_KCSAN_DEBUG is not set
CONFIG_KCSAN_SELFTEST=y
# CONFIG_KCSAN_EARLY_ENABLE is not set
@@ -27,7 +31,6 @@ CONFIG_KCSAN_IGNORE_ATOMICS=y
# CONFIG_DEBUG_VIRTUAL is not set
# CONFIG_DEBUG_MEMORY_INIT is not set
# CONFIG_DEBUG_PER_CPU_MAPS is not set
-# CONFIG_PROVE_LOCKING is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_MUTEXES is not set
diff --git a/dashboard/config/upstream-kcsan.config b/dashboard/config/upstream-kcsan.config
index 8c11beee9..70f880944 100644
--- a/dashboard/config/upstream-kcsan.config
+++ b/dashboard/config/upstream-kcsan.config
@@ -14,7 +14,7 @@ CONFIG_TWIST_FOR_SYZKALLER_TESTING=y
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 5.8.0-rc7 Kernel Configuration
+# Linux/x86 5.8.0 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="clang version 11.0.0 (https://github.com/llvm/llvm-project.git ca2dcbd030eadbf0aa9b660efe864ff08af6e18b)"
CONFIG_GCC_VERSION=0
@@ -8271,20 +8271,24 @@ CONFIG_DEBUG_PREEMPT=y
# Lock Debugging (spinlocks, mutexes, etc...)
#
CONFIG_LOCK_DEBUGGING_SUPPORT=y
-# CONFIG_PROVE_LOCKING is not set
+CONFIG_PROVE_LOCKING=y
+# CONFIG_PROVE_RAW_LOCK_NESTING is not set
# CONFIG_LOCK_STAT is not set
-# CONFIG_DEBUG_RT_MUTEXES is not set
-# CONFIG_DEBUG_SPINLOCK is not set
-# CONFIG_DEBUG_MUTEXES is not set
-# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
-# CONFIG_DEBUG_RWSEMS is not set
-# CONFIG_DEBUG_LOCK_ALLOC is not set
+CONFIG_DEBUG_RT_MUTEXES=y
+CONFIG_DEBUG_SPINLOCK=y
+CONFIG_DEBUG_MUTEXES=y
+CONFIG_DEBUG_WW_MUTEX_SLOWPATH=y
+CONFIG_DEBUG_RWSEMS=y
+CONFIG_DEBUG_LOCK_ALLOC=y
+CONFIG_LOCKDEP=y
+# CONFIG_DEBUG_LOCKDEP is not set
# CONFIG_DEBUG_ATOMIC_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_LOCK_TORTURE_TEST is not set
# CONFIG_WW_MUTEX_SELFTEST is not set
# end of Lock Debugging (spinlocks, mutexes, etc...)
+CONFIG_TRACE_IRQFLAGS=y
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
@@ -8304,6 +8308,7 @@ CONFIG_BUG_ON_DATA_CORRUPTION=y
#
# RCU Debugging
#
+CONFIG_PROVE_RCU=y
# CONFIG_RCU_PERF_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=100
@@ -8330,6 +8335,7 @@ CONFIG_TRACE_CLOCK=y
CONFIG_RING_BUFFER=y
CONFIG_EVENT_TRACING=y
CONFIG_CONTEXT_SWITCH_TRACER=y
+CONFIG_PREEMPTIRQ_TRACEPOINTS=y
CONFIG_TRACING=y
CONFIG_GENERIC_TRACER=y
CONFIG_TRACING_SUPPORT=y
@@ -8366,6 +8372,7 @@ CONFIG_PROVIDE_OHCI1394_DMA_INIT=y
CONFIG_HAVE_ARCH_KCSAN=y
CONFIG_HAVE_KCSAN_COMPILER=y
CONFIG_KCSAN=y
+CONFIG_KCSAN_VERBOSE=y
# CONFIG_KCSAN_DEBUG is not set
CONFIG_KCSAN_SELFTEST=y
# CONFIG_KCSAN_EARLY_ENABLE is not set