xref: /openbmc/linux/kernel/configs/debug.config (revision 0aaa8977)
1*0aaa8977SQian Cai# The config is based on running daily CI for enterprise Linux distros to
2*0aaa8977SQian Cai# seek regressions on linux-next builds on different bare-metal and virtual
3*0aaa8977SQian Cai# platforms. It can be used for example,
4*0aaa8977SQian Cai#
5*0aaa8977SQian Cai# $ make ARCH=arm64 defconfig debug.config
6*0aaa8977SQian Cai#
7*0aaa8977SQian Cai# Keep alphabetically sorted inside each section.
8*0aaa8977SQian Cai#
9*0aaa8977SQian Cai# printk and dmesg options
10*0aaa8977SQian Cai#
11*0aaa8977SQian CaiCONFIG_DEBUG_BUGVERBOSE=y
12*0aaa8977SQian CaiCONFIG_DYNAMIC_DEBUG=y
13*0aaa8977SQian CaiCONFIG_PRINTK_CALLER=y
14*0aaa8977SQian CaiCONFIG_PRINTK_TIME=y
15*0aaa8977SQian CaiCONFIG_SYMBOLIC_ERRNAME=y
16*0aaa8977SQian Cai#
17*0aaa8977SQian Cai# Compile-time checks and compiler options
18*0aaa8977SQian Cai#
19*0aaa8977SQian CaiCONFIG_DEBUG_INFO=y
20*0aaa8977SQian CaiCONFIG_DEBUG_SECTION_MISMATCH=y
21*0aaa8977SQian CaiCONFIG_FRAME_WARN=2048
22*0aaa8977SQian CaiCONFIG_SECTION_MISMATCH_WARN_ONLY=y
23*0aaa8977SQian Cai#
24*0aaa8977SQian Cai# Generic Kernel Debugging Instruments
25*0aaa8977SQian Cai#
26*0aaa8977SQian Cai# CONFIG_UBSAN_ALIGNMENT is not set
27*0aaa8977SQian Cai# CONFIG_UBSAN_DIV_ZERO is not set
28*0aaa8977SQian Cai# CONFIG_UBSAN_TRAP is not set
29*0aaa8977SQian Cai# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
30*0aaa8977SQian CaiCONFIG_DEBUG_FS=y
31*0aaa8977SQian CaiCONFIG_DEBUG_FS_ALLOW_ALL=y
32*0aaa8977SQian CaiCONFIG_DEBUG_IRQFLAGS=y
33*0aaa8977SQian CaiCONFIG_UBSAN=y
34*0aaa8977SQian CaiCONFIG_UBSAN_BOOL=y
35*0aaa8977SQian CaiCONFIG_UBSAN_BOUNDS=y
36*0aaa8977SQian CaiCONFIG_UBSAN_ENUM=y
37*0aaa8977SQian CaiCONFIG_UBSAN_SHIFT=y
38*0aaa8977SQian CaiCONFIG_UBSAN_UNREACHABLE=y
39*0aaa8977SQian Cai#
40*0aaa8977SQian Cai# Memory Debugging
41*0aaa8977SQian Cai#
42*0aaa8977SQian Cai# CONFIG_DEBUG_PAGEALLOC is not set
43*0aaa8977SQian Cai# CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF is not set
44*0aaa8977SQian Cai# CONFIG_DEBUG_RODATA_TEST is not set
45*0aaa8977SQian Cai# CONFIG_DEBUG_WX is not set
46*0aaa8977SQian Cai# CONFIG_KFENCE is not set
47*0aaa8977SQian Cai# CONFIG_PAGE_POISONING is not set
48*0aaa8977SQian Cai# CONFIG_SLUB_STATS is not set
49*0aaa8977SQian CaiCONFIG_PAGE_EXTENSION=y
50*0aaa8977SQian CaiCONFIG_PAGE_OWNER=y
51*0aaa8977SQian CaiCONFIG_DEBUG_KMEMLEAK=y
52*0aaa8977SQian CaiCONFIG_DEBUG_KMEMLEAK_AUTO_SCAN=y
53*0aaa8977SQian CaiCONFIG_DEBUG_OBJECTS=y
54*0aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1
55*0aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_FREE=y
56*0aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y
57*0aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_RCU_HEAD=y
58*0aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_TIMERS=y
59*0aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_WORK=y
60*0aaa8977SQian CaiCONFIG_DEBUG_PER_CPU_MAPS=y
61*0aaa8977SQian CaiCONFIG_DEBUG_STACK_USAGE=y
62*0aaa8977SQian CaiCONFIG_DEBUG_VIRTUAL=y
63*0aaa8977SQian CaiCONFIG_DEBUG_VM=y
64*0aaa8977SQian CaiCONFIG_DEBUG_VM_PGFLAGS=y
65*0aaa8977SQian CaiCONFIG_DEBUG_VM_RB=y
66*0aaa8977SQian CaiCONFIG_DEBUG_VM_VMACACHE=y
67*0aaa8977SQian CaiCONFIG_GENERIC_PTDUMP=y
68*0aaa8977SQian CaiCONFIG_KASAN=y
69*0aaa8977SQian CaiCONFIG_KASAN_GENERIC=y
70*0aaa8977SQian CaiCONFIG_KASAN_INLINE=y
71*0aaa8977SQian CaiCONFIG_KASAN_VMALLOC=y
72*0aaa8977SQian CaiCONFIG_PTDUMP_DEBUGFS=y
73*0aaa8977SQian CaiCONFIG_SCHED_STACK_END_CHECK=y
74*0aaa8977SQian CaiCONFIG_SLUB_DEBUG_ON=y
75*0aaa8977SQian Cai#
76*0aaa8977SQian Cai# Debug Oops, Lockups and Hangs
77*0aaa8977SQian Cai#
78*0aaa8977SQian Cai# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
79*0aaa8977SQian Cai# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
80*0aaa8977SQian CaiCONFIG_DEBUG_ATOMIC_SLEEP=y
81*0aaa8977SQian CaiCONFIG_DETECT_HUNG_TASK=y
82*0aaa8977SQian CaiCONFIG_PANIC_ON_OOPS=y
83*0aaa8977SQian CaiCONFIG_PANIC_TIMEOUT=0
84*0aaa8977SQian CaiCONFIG_SOFTLOCKUP_DETECTOR=y
85*0aaa8977SQian Cai#
86*0aaa8977SQian Cai# Lock Debugging (spinlocks, mutexes, etc...)
87*0aaa8977SQian Cai#
88*0aaa8977SQian Cai# CONFIG_PROVE_RAW_LOCK_NESTING is not set
89*0aaa8977SQian CaiCONFIG_PROVE_LOCKING=y
90*0aaa8977SQian Cai#
91*0aaa8977SQian Cai# Debug kernel data structures
92*0aaa8977SQian Cai#
93*0aaa8977SQian CaiCONFIG_BUG_ON_DATA_CORRUPTION=y
94*0aaa8977SQian Cai#
95*0aaa8977SQian Cai# RCU Debugging
96*0aaa8977SQian Cai#
97*0aaa8977SQian CaiCONFIG_PROVE_RCU=y
98*0aaa8977SQian CaiCONFIG_PROVE_RCU_LIST=y
99*0aaa8977SQian Cai#
100*0aaa8977SQian Cai# Tracers
101*0aaa8977SQian Cai#
102*0aaa8977SQian CaiCONFIG_BRANCH_PROFILE_NONE=y
103*0aaa8977SQian CaiCONFIG_DYNAMIC_FTRACE=y
104*0aaa8977SQian CaiCONFIG_FTRACE=y
105*0aaa8977SQian CaiCONFIG_FUNCTION_TRACER=y
106