GNU Linux-libre 5.19-rc6-gnu
[releases.git] / kernel / configs / debug.config
1 # The config is based on running daily CI for enterprise Linux distros to
2 # seek regressions on linux-next builds on different bare-metal and virtual
3 # platforms. It can be used for example,
4 #
5 # $ make ARCH=arm64 defconfig debug.config
6 #
7 # Keep alphabetically sorted inside each section.
8 #
9 # printk and dmesg options
10 #
11 CONFIG_DEBUG_BUGVERBOSE=y
12 CONFIG_DYNAMIC_DEBUG=y
13 CONFIG_PRINTK_CALLER=y
14 CONFIG_PRINTK_TIME=y
15 CONFIG_SYMBOLIC_ERRNAME=y
16 #
17 # Compile-time checks and compiler options
18 #
19 CONFIG_DEBUG_INFO=y
20 CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y
21 CONFIG_DEBUG_SECTION_MISMATCH=y
22 CONFIG_FRAME_WARN=2048
23 CONFIG_SECTION_MISMATCH_WARN_ONLY=y
24 #
25 # Generic Kernel Debugging Instruments
26 #
27 # CONFIG_UBSAN_ALIGNMENT is not set
28 # CONFIG_UBSAN_DIV_ZERO is not set
29 # CONFIG_UBSAN_TRAP is not set
30 # CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
31 CONFIG_DEBUG_FS=y
32 CONFIG_DEBUG_FS_ALLOW_ALL=y
33 CONFIG_DEBUG_IRQFLAGS=y
34 CONFIG_UBSAN=y
35 CONFIG_UBSAN_BOOL=y
36 CONFIG_UBSAN_BOUNDS=y
37 CONFIG_UBSAN_ENUM=y
38 CONFIG_UBSAN_SHIFT=y
39 CONFIG_UBSAN_UNREACHABLE=y
40 #
41 # Memory Debugging
42 #
43 # CONFIG_DEBUG_PAGEALLOC is not set
44 # CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF is not set
45 # CONFIG_DEBUG_RODATA_TEST is not set
46 # CONFIG_DEBUG_WX is not set
47 # CONFIG_KFENCE is not set
48 # CONFIG_PAGE_POISONING is not set
49 # CONFIG_SLUB_STATS is not set
50 CONFIG_PAGE_EXTENSION=y
51 CONFIG_PAGE_OWNER=y
52 CONFIG_DEBUG_KMEMLEAK=y
53 CONFIG_DEBUG_KMEMLEAK_AUTO_SCAN=y
54 CONFIG_DEBUG_OBJECTS=y
55 CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1
56 CONFIG_DEBUG_OBJECTS_FREE=y
57 CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y
58 CONFIG_DEBUG_OBJECTS_RCU_HEAD=y
59 CONFIG_DEBUG_OBJECTS_TIMERS=y
60 CONFIG_DEBUG_OBJECTS_WORK=y
61 CONFIG_DEBUG_PER_CPU_MAPS=y
62 CONFIG_DEBUG_STACK_USAGE=y
63 CONFIG_DEBUG_VIRTUAL=y
64 CONFIG_DEBUG_VM=y
65 CONFIG_DEBUG_VM_PGFLAGS=y
66 CONFIG_DEBUG_VM_RB=y
67 CONFIG_DEBUG_VM_VMACACHE=y
68 CONFIG_GENERIC_PTDUMP=y
69 CONFIG_KASAN=y
70 CONFIG_KASAN_GENERIC=y
71 CONFIG_KASAN_INLINE=y
72 CONFIG_KASAN_VMALLOC=y
73 CONFIG_PTDUMP_DEBUGFS=y
74 CONFIG_SCHED_STACK_END_CHECK=y
75 CONFIG_SLUB_DEBUG_ON=y
76 #
77 # Debug Oops, Lockups and Hangs
78 #
79 # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
80 # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
81 CONFIG_DEBUG_ATOMIC_SLEEP=y
82 CONFIG_DETECT_HUNG_TASK=y
83 CONFIG_PANIC_ON_OOPS=y
84 CONFIG_PANIC_TIMEOUT=0
85 CONFIG_SOFTLOCKUP_DETECTOR=y
86 #
87 # Lock Debugging (spinlocks, mutexes, etc...)
88 #
89 # CONFIG_PROVE_RAW_LOCK_NESTING is not set
90 CONFIG_PROVE_LOCKING=y
91 #
92 # Debug kernel data structures
93 #
94 CONFIG_BUG_ON_DATA_CORRUPTION=y
95 #
96 # RCU Debugging
97 #
98 CONFIG_PROVE_RCU=y
99 CONFIG_PROVE_RCU_LIST=y
100 #
101 # Tracers
102 #
103 CONFIG_BRANCH_PROFILE_NONE=y
104 CONFIG_DYNAMIC_FTRACE=y
105 CONFIG_FTRACE=y
106 CONFIG_FUNCTION_TRACER=y