Skip to contentSkip to conversation

Make panic_on_oops configurable

PATCH In review Kyle McMartin 1 participant 2 messages Apr 11, 2012 – May 8, 2012 Library code

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Make panic_on_oops configurable

Several distros set this by default by patching panic_on_oops. It seems to fit with the BOOTPARAM_{HARD,SOFT}_PANIC options though, so let's add a Kconfig entry and reduce some more upstream delta.

kernel/panic.c +1 -1
@@ -27,7 +27,7 @@
 #define PANIC_TIMER_STEP 100
 #define PANIC_BLINK_SPD 18
 
-int panic_on_oops;
+int panic_on_oops = CONFIG_PANIC_ON_OOPS_VALUE;
 static unsigned long tainted_mask;
 static int pause_on_oops;
 static int pause_on_oops_flag;
lib/Kconfig.debug +20 -0
index 6777153..91858cd 100644
@@ -228,6 +228,26 @@ config BOOTPARAM_SOFTLOCKUP_PANIC_VALUE
 	default 0 if !BOOTPARAM_SOFTLOCKUP_PANIC
 	default 1 if BOOTPARAM_SOFTLOCKUP_PANIC
 
+config PANIC_ON_OOPS
+	bool "Panic on Oops" if EXPERT
+	default n
+	help
+	  Say Y here to enable the kernel to panic when it oopses. This
+	  has the same effect as setting oops=panic on the kernel command
+	  line.
+
+	  This feature is useful to ensure that the kernel does not do
+	  anything erroneous after an oops which could result in data
+	  corruption or other issues.
+
+	  Say N if unsure.
+
+config PANIC_ON_OOPS_VALUE
+	int
+	range 0 1
+	default 0 if !PANIC_ON_OOPS
+	default 1 if PANIC_ON_OOPS
+
 config DETECT_HUNG_TASK
 	bool "Detect Hung Tasks"
 	depends on DEBUG_KERNEL
#1 lore raw

[tip:core/debug] panic: Make panic_on_oops configurable

Commit-ID:  2a01bb3885c9145dbb7583d5aa5f5d5504f6f46f
Gitweb:     http://git.kernel.org/tip/2a01bb3885c9145dbb7583d5aa5f5d5504f6f46f
Author:     Kyle McMartin <[email protected]>
AuthorDate: Wed, 11 Apr 2012 08:15:29 -0400
Committer:  Ingo Molnar <[email protected]>
CommitDate: Mon, 7 May 2012 14:45:29 +0200

panic: Make panic_on_oops configurable

Several distros set this by default by patching panic_on_oops. It seems to fit with the BOOTPARAM_{HARD,SOFT}_PANIC options though, so let's add a Kconfig entry and reduce some more upstream delta.

---
 kernel/panic.c    |    2 +-
 lib/Kconfig.debug |   20 ++++++++++++++++++++
 2 files changed, 21 insertions(+), 1 deletions(-)
kernel/panic.c +1 -1
index 8ed89a1..b6215b7 100644
@@ -27,7 +27,7 @@
 #define PANIC_TIMER_STEP 100
 #define PANIC_BLINK_SPD 18
 
-int panic_on_oops;
+int panic_on_oops = CONFIG_PANIC_ON_OOPS_VALUE;
 static unsigned long tainted_mask;
 static int pause_on_oops;
 static int pause_on_oops_flag;
lib/Kconfig.debug +20 -0
index 6777153..91858cd 100644
@@ -228,6 +228,26 @@ config BOOTPARAM_SOFTLOCKUP_PANIC_VALUE
 	default 0 if !BOOTPARAM_SOFTLOCKUP_PANIC
 	default 1 if BOOTPARAM_SOFTLOCKUP_PANIC
 
+config PANIC_ON_OOPS
+	bool "Panic on Oops" if EXPERT
+	default n
+	help
+	  Say Y here to enable the kernel to panic when it oopses. This
+	  has the same effect as setting oops=panic on the kernel command
+	  line.
+
+	  This feature is useful to ensure that the kernel does not do
+	  anything erroneous after an oops which could result in data
+	  corruption or other issues.
+
+	  Say N if unsure.
+
+config PANIC_ON_OOPS_VALUE
+	int
+	range 0 1
+	default 0 if !PANIC_ON_OOPS
+	default 1 if PANIC_ON_OOPS
+
 config DETECT_HUNG_TASK
 	bool "Detect Hung Tasks"
 	depends on DEBUG_KERNEL