aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@au1.ibm.com>2006-06-06 22:06:20 -0400
committerPaul Mackerras <paulus@samba.org>2006-06-09 07:24:10 -0400
commit3b5e905ee3bd23e9311951890aba57a0dbc81ca4 (patch)
tree700e3dd7e21b09006216647fb0dec284b682f2ab /arch
parente78dbc800c37f035d476c4fdebdf43cdecfcb731 (diff)
[PATCH] powerpc: Add udbg-immortal kernel option
When debugging early kernel crashes that happen after console_init() and before a proper console driver takes over, we often have to go hack into udbg.c to prevent it from unregistering so we can "see" what is happening. This patch adds a kernel command line option "udbg-immortal" instead to avoid having to modify the kernel. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/kernel/udbg.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/udbg.c b/arch/powerpc/kernel/udbg.c
index 3774e80094f5..67d9fd9ae2b5 100644
--- a/arch/powerpc/kernel/udbg.c
+++ b/arch/powerpc/kernel/udbg.c
@@ -14,6 +14,7 @@
14#include <linux/types.h> 14#include <linux/types.h>
15#include <linux/sched.h> 15#include <linux/sched.h>
16#include <linux/console.h> 16#include <linux/console.h>
17#include <linux/init.h>
17#include <asm/processor.h> 18#include <asm/processor.h>
18#include <asm/udbg.h> 19#include <asm/udbg.h>
19 20
@@ -141,12 +142,14 @@ static int early_console_initialized;
141 142
142void __init disable_early_printk(void) 143void __init disable_early_printk(void)
143{ 144{
144#if 1
145 if (!early_console_initialized) 145 if (!early_console_initialized)
146 return; 146 return;
147 if (strstr(saved_command_line, "udbg-immortal")) {
148 printk(KERN_INFO "early console immortal !\n");
149 return;
150 }
147 unregister_console(&udbg_console); 151 unregister_console(&udbg_console);
148 early_console_initialized = 0; 152 early_console_initialized = 0;
149#endif
150} 153}
151 154
152/* called by setup_system */ 155/* called by setup_system */