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