aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Rutland <mark.rutland@arm.com>2019-12-10 18:35:31 +0000
committerMark Rutland <mark.rutland@arm.com>2024-02-12 14:06:52 +0000
commita51b52d3e77af41bf0119274fbe39998c24fcb2c (patch)
tree615c4ae73e6257d4e0002c1596909df953ca054b
parent841c35169323cd833294798e58b9bf63fa4fa1de (diff)
downloadlinux-testing/v6.8-rc4.tar.gz
HACK: arm64: add testing config fragmentstesting/v6.8-rc4
This is commited to aid future reproducibility of bugs found on this branch, and is not intended for upstream. For basic/boot testing, build with: $ make defconfig testing.config $ make For fuzzing with syzkaller, build with: $ make defconfig testing.config syzkaller.config $ make To use additional instrumentation options, chain with the other config fragments, e.g. $ make defconfig testing.config pnmi.config syzkaller.config kasan.config ubsan.config $ make Signed-off-by: Mark Rutland <mark.rutland@arm.com>
-rw-r--r--arch/arm64/configs/kasan.config2
-rw-r--r--arch/arm64/configs/kcsan.config2
-rw-r--r--arch/arm64/configs/pnmi.config1
-rw-r--r--arch/arm64/configs/syzkaller.config27
-rw-r--r--arch/arm64/configs/testing.config50
-rw-r--r--arch/arm64/configs/ubsan.config1
6 files changed, 83 insertions, 0 deletions
diff --git a/arch/arm64/configs/kasan.config b/arch/arm64/configs/kasan.config
new file mode 100644
index 0000000000000..d18d056f78f1f
--- /dev/null
+++ b/arch/arm64/configs/kasan.config
@@ -0,0 +1,2 @@
+CONFIG_KASAN=y
+CONFIG_KASAN_INLINE=y
diff --git a/arch/arm64/configs/kcsan.config b/arch/arm64/configs/kcsan.config
new file mode 100644
index 0000000000000..639736c067962
--- /dev/null
+++ b/arch/arm64/configs/kcsan.config
@@ -0,0 +1,2 @@
+CONFIG_EXPERT=y
+CONFIG_KCSAN=y
diff --git a/arch/arm64/configs/pnmi.config b/arch/arm64/configs/pnmi.config
new file mode 100644
index 0000000000000..9a822122078c9
--- /dev/null
+++ b/arch/arm64/configs/pnmi.config
@@ -0,0 +1 @@
+CONFIG_ARM64_PSEUDO_NMI=y
diff --git a/arch/arm64/configs/syzkaller.config b/arch/arm64/configs/syzkaller.config
new file mode 100644
index 0000000000000..7cc145db9b2b9
--- /dev/null
+++ b/arch/arm64/configs/syzkaller.config
@@ -0,0 +1,27 @@
+# Makes it easier to separate interleaved printk calls from multiple
+# threads
+CONFIG_PRINTK_CALLER=y
+
+# Coverage information used to direct fuzzing
+CONFIG_KCOV=y
+CONFIG_KCOV_ENABLE_COMPARISONS=y
+
+# To avoid the need to insert kernel modules into the test filesystem,
+# force everything to be built into the main kernel Image.
+CONFIG_MODULES=n
+
+# Used for fuzzing networking
+CONFIG_NETDEVSIM=y
+
+# Used for fault injection
+CONFIG_FAULT_INJECTION=y
+CONFIG_FAILSLAB=y
+CONFIG_FAIL_PAGE_ALLOC=y
+CONFIG_FAIL_MAKE_REQUEST=y
+CONFIG_FAIL_IO_TIMEOUT=y
+CONFIG_FAIL_FUTEX=y
+CONFIG_FAULT_INJECTION_DEBUG_FS=y
+
+# Features that are worth fuzzing, even if not enabled in defconfig
+CONFIG_BPF_SYSCALL=y
+CONFIG_USERFAULTFD=y
diff --git a/arch/arm64/configs/testing.config b/arch/arm64/configs/testing.config
new file mode 100644
index 0000000000000..8e6c3745506db
--- /dev/null
+++ b/arch/arm64/configs/testing.config
@@ -0,0 +1,50 @@
+# General runtime testing / instrumentation features worth enabling for
+# testing
+
+CONFIG_DEBUG_WX=y
+
+CONFIG_HARDENED_USERCOPY=y
+CONFIG_HARDENED_USERCOPY_FALLBACK=y
+CONFIG_FORTIFY_SOURCE=y
+
+CONFIG_NET_DEV_REFCNT_TRACKER=y
+CONFIG_NET_NS_REFCNT_TRACKER=y
+CONFIG_DEBUG_NET=y
+
+CONFIG_PAGE_TABLE_CHECK=y
+CONFIG_PAGE_TABLE_CHECK_ENFORCED=y
+
+CONFIG_DEBUG_VM=y
+CONFIG_DEBUG_VM_MAPLE_TREE=y
+CONFIG_DEBUG_VM_RB=y
+CONFIG_DEBUG_VM_PGFLAGS=y
+
+CONFIG_DEBUG_VIRTUAL=y
+CONFIG_DEBUG_PER_CPU_MAPS=y
+
+CONFIG_DEBUG_LIST=y
+CONFIG_DEBUG_CREDENTIALS=y
+CONFIG_DEBUG_TIMEKEEPING=y
+CONFIG_DEBUG_PREEMPT=y
+CONFIG_PROVE_LOCKING=y
+CONFIG_DEBUG_ATOMIC_SLEEP=y
+CONFIG_DEBUG_IRQFLAGS=y
+
+CONFIG_RCU_EQS_DEBUG=y
+
+CONFIG_SOFTLOCKUP_DETECTOR=y
+CONFIG_DETECT_HUNG_TASK=y
+CONFIG_WQ_WATCHDOG=y
+
+CONFIG_CSD_LOCK_WAIT_DEBUG=y
+
+CONFIG_HZ_1000=y
+CONFIG_NO_HZ_FULL=y
+CONFIG_CONTEXT_TRACKING_FORCE=y
+
+CONFIG_FTRACE=y
+CONFIG_FUNCTION_TRACER=y
+CONFIG_FUNCTION_GRAPH_TRACER=y
+CONFIG_FTRACE_SYSCALLS=y
+
+CONFIG_KPROBES=y
diff --git a/arch/arm64/configs/ubsan.config b/arch/arm64/configs/ubsan.config
new file mode 100644
index 0000000000000..ceae016bdc4f7
--- /dev/null
+++ b/arch/arm64/configs/ubsan.config
@@ -0,0 +1 @@
+CONFIG_UBSAN=y