Fixed dead ifdef block by adding missing Kconfig option.
Robert Obermeier [Sun, 16 Dec 2012 04:59:36 +0000 (05:59 +0100)]
Added missing Kconfig option KDB_CONTINUE_CATASTROPHIC which lead to a dead
ifdef block in kernel/debug/kdb/kdb_main.c:73-75.

The code using KDB_CONTINUE_CATASTROPHIC was originally introduced in
commit '5d5314d6795f3c1c0f415348ff8c51f7de042b77' by Jason Wessel.
This patchset ("kdb: core for kgdb back end (1 of 2)")
added platform independent part of kdb to the linux kernel.

The Kernel option however, even though it had the same options and
behaviour on all supported architectures, was part of the x86 and
ia64 patchset of KDB and therefore not pulled into the mainline kernel tree.

I actually took the originally written Kconfig by
Keith Owens <kaos@sgi.com> (2003-06-20 according to KDB changelog)
and changed it to reflect the correct behaviour,
as the KDUMP patchset is not part of the kernel and the expected
functionality is missing from it.

Signed-off-by: Robert Obermeier <obbi89@googlemail.com>
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>

lib/Kconfig.kgdb

index 43cb93f..960fa2e 100644 (file)
@@ -79,4 +79,22 @@ config KDB_KEYBOARD
        help
          KDB can use a PS/2 type keyboard for an input device
 
+config KDB_CONTINUE_CATASTROPHIC
+       int "KDB: continue after catastrophic errors"
+       depends on KGDB_KDB
+       default "0"
+       help
+         This integer controls the behaviour of kdb when the kernel gets a
+         catastrophic error, i.e. for a panic or oops.
+         When KDB is active and a catastrophic error occurs, nothing extra
+         will happen until you type 'go'.
+         CONFIG_KDB_CONTINUE_CATASTROPHIC == 0 (default). The first time
+         you type 'go', you will be warned by kdb. The secend time you type
+         'go', KDB tries to continue. No guarantees that the
+         kernel is still usable in this situation.
+         CONFIG_KDB_CONTINUE_CATASTROPHIC == 1. KDB tries to continue.
+         No guarantees that the kernel is still usable in this situation.
+         CONFIG_KDB_CONTINUE_CATASTROPHIC == 2. KDB forces a reboot.
+         If you are not sure, say 0.
+
 endif # KGDB