1feec5e1fSKees Cook# Help: Debugging for CI systems and finding regressions 2feec5e1fSKees Cook# 30aaa8977SQian Cai# The config is based on running daily CI for enterprise Linux distros to 40aaa8977SQian Cai# seek regressions on linux-next builds on different bare-metal and virtual 50aaa8977SQian Cai# platforms. It can be used for example, 60aaa8977SQian Cai# 70aaa8977SQian Cai# $ make ARCH=arm64 defconfig debug.config 80aaa8977SQian Cai# 90aaa8977SQian Cai# Keep alphabetically sorted inside each section. 100aaa8977SQian Cai# 110aaa8977SQian Cai# printk and dmesg options 120aaa8977SQian Cai# 130aaa8977SQian CaiCONFIG_DEBUG_BUGVERBOSE=y 140aaa8977SQian CaiCONFIG_DYNAMIC_DEBUG=y 150aaa8977SQian CaiCONFIG_PRINTK_CALLER=y 160aaa8977SQian CaiCONFIG_PRINTK_TIME=y 170aaa8977SQian CaiCONFIG_SYMBOLIC_ERRNAME=y 180aaa8977SQian Cai# 190aaa8977SQian Cai# Compile-time checks and compiler options 200aaa8977SQian Cai# 218208257dSQian CaiCONFIG_DEBUG_INFO=y 22d1eff16dSQian CaiCONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y 230aaa8977SQian CaiCONFIG_DEBUG_SECTION_MISMATCH=y 240aaa8977SQian CaiCONFIG_FRAME_WARN=2048 250aaa8977SQian CaiCONFIG_SECTION_MISMATCH_WARN_ONLY=y 260aaa8977SQian Cai# 270aaa8977SQian Cai# Generic Kernel Debugging Instruments 280aaa8977SQian Cai# 290aaa8977SQian Cai# CONFIG_UBSAN_ALIGNMENT is not set 300aaa8977SQian Cai# CONFIG_UBSAN_DIV_ZERO is not set 310aaa8977SQian Cai# CONFIG_UBSAN_TRAP is not set 320aaa8977SQian Cai# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set 330aaa8977SQian CaiCONFIG_DEBUG_FS=y 340aaa8977SQian CaiCONFIG_DEBUG_FS_ALLOW_ALL=y 350aaa8977SQian CaiCONFIG_DEBUG_IRQFLAGS=y 360aaa8977SQian CaiCONFIG_UBSAN=y 370aaa8977SQian CaiCONFIG_UBSAN_BOOL=y 380aaa8977SQian CaiCONFIG_UBSAN_BOUNDS=y 390aaa8977SQian CaiCONFIG_UBSAN_ENUM=y 400aaa8977SQian CaiCONFIG_UBSAN_SHIFT=y 410aaa8977SQian CaiCONFIG_UBSAN_UNREACHABLE=y 420aaa8977SQian Cai# 433738d710SMatthieu Baerts (NGI0)# Networking Debugging 443738d710SMatthieu Baerts (NGI0)# 453738d710SMatthieu Baerts (NGI0)CONFIG_NET_DEV_REFCNT_TRACKER=y 463738d710SMatthieu Baerts (NGI0)CONFIG_NET_NS_REFCNT_TRACKER=y 473738d710SMatthieu Baerts (NGI0)CONFIG_DEBUG_NET=y 483738d710SMatthieu Baerts (NGI0)# 490aaa8977SQian Cai# Memory Debugging 500aaa8977SQian Cai# 510aaa8977SQian Cai# CONFIG_DEBUG_PAGEALLOC is not set 520aaa8977SQian Cai# CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF is not set 530aaa8977SQian Cai# CONFIG_DEBUG_RODATA_TEST is not set 540aaa8977SQian Cai# CONFIG_DEBUG_WX is not set 550aaa8977SQian Cai# CONFIG_KFENCE is not set 560aaa8977SQian Cai# CONFIG_PAGE_POISONING is not set 570aaa8977SQian Cai# CONFIG_SLUB_STATS is not set 580aaa8977SQian CaiCONFIG_PAGE_EXTENSION=y 590aaa8977SQian CaiCONFIG_PAGE_OWNER=y 600aaa8977SQian CaiCONFIG_DEBUG_KMEMLEAK=y 610aaa8977SQian CaiCONFIG_DEBUG_KMEMLEAK_AUTO_SCAN=y 620aaa8977SQian CaiCONFIG_DEBUG_OBJECTS=y 630aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 640aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_FREE=y 650aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y 660aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_RCU_HEAD=y 670aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_TIMERS=y 680aaa8977SQian CaiCONFIG_DEBUG_OBJECTS_WORK=y 690aaa8977SQian CaiCONFIG_DEBUG_PER_CPU_MAPS=y 700aaa8977SQian CaiCONFIG_DEBUG_STACK_USAGE=y 710aaa8977SQian CaiCONFIG_DEBUG_VIRTUAL=y 720aaa8977SQian CaiCONFIG_DEBUG_VM=y 730aaa8977SQian CaiCONFIG_DEBUG_VM_PGFLAGS=y 740aaa8977SQian CaiCONFIG_DEBUG_VM_RB=y 750aaa8977SQian CaiCONFIG_DEBUG_VM_VMACACHE=y 760aaa8977SQian CaiCONFIG_KASAN=y 770aaa8977SQian CaiCONFIG_KASAN_GENERIC=y 780aaa8977SQian CaiCONFIG_KASAN_INLINE=y 790aaa8977SQian CaiCONFIG_KASAN_VMALLOC=y 800aaa8977SQian CaiCONFIG_PTDUMP_DEBUGFS=y 810aaa8977SQian CaiCONFIG_SCHED_STACK_END_CHECK=y 820aaa8977SQian CaiCONFIG_SLUB_DEBUG_ON=y 830aaa8977SQian Cai# 840aaa8977SQian Cai# Debug Oops, Lockups and Hangs 850aaa8977SQian Cai# 860aaa8977SQian Cai# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set 870aaa8977SQian Cai# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 880aaa8977SQian CaiCONFIG_DEBUG_ATOMIC_SLEEP=y 890aaa8977SQian CaiCONFIG_DETECT_HUNG_TASK=y 900aaa8977SQian CaiCONFIG_PANIC_ON_OOPS=y 910aaa8977SQian CaiCONFIG_PANIC_TIMEOUT=0 920aaa8977SQian CaiCONFIG_SOFTLOCKUP_DETECTOR=y 930aaa8977SQian Cai# 940aaa8977SQian Cai# Lock Debugging (spinlocks, mutexes, etc...) 950aaa8977SQian Cai# 960aaa8977SQian Cai# CONFIG_PROVE_RAW_LOCK_NESTING is not set 970aaa8977SQian CaiCONFIG_PROVE_LOCKING=y 980aaa8977SQian Cai# 990aaa8977SQian Cai# Debug kernel data structures 1000aaa8977SQian Cai# 1010aaa8977SQian CaiCONFIG_BUG_ON_DATA_CORRUPTION=y 1020aaa8977SQian Cai# 1030aaa8977SQian Cai# RCU Debugging 1040aaa8977SQian Cai# 105*a3e4bf7fSJakub KicinskiCONFIG_RCU_EXPERT=y 1060aaa8977SQian CaiCONFIG_PROVE_RCU=y 1070aaa8977SQian CaiCONFIG_PROVE_RCU_LIST=y 1080aaa8977SQian Cai# 1090aaa8977SQian Cai# Tracers 1100aaa8977SQian Cai# 1110aaa8977SQian CaiCONFIG_BRANCH_PROFILE_NONE=y 1120aaa8977SQian CaiCONFIG_DYNAMIC_FTRACE=y 1130aaa8977SQian CaiCONFIG_FTRACE=y 1140aaa8977SQian CaiCONFIG_FUNCTION_TRACER=y 115