summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Torokhov <dtor_core@ameritech.net>2004-11-07 04:12:12 -0800
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-11-07 04:12:12 -0800
commitbf115e8ab25ab100241cc83721c94261bdb6ebd3 (patch)
tree105e2b8031a6a36bbff864ef630397eefea05e3b
parent0e879ae6924afb5a6855234d9cedb56d54954085 (diff)
[PATCH] panic_blink and i8042 unloading
At unload i8042 sets panic_blink to 0. This will cause problems if kernel panics later as it will just use it assuming that the pointer is correct. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--kernel/panic.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/kernel/panic.c b/kernel/panic.c
index 97918d4ff44f..3f93784a4207 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -42,7 +42,7 @@ static long no_blink(long time)
}
/* Returns how long it waited in ms */
-long (*panic_blink)(long time) = no_blink;
+long (*panic_blink)(long time);
EXPORT_SYMBOL(panic_blink);
/**
@@ -75,7 +75,10 @@ NORET_TYPE void panic(const char * fmt, ...)
smp_send_stop();
#endif
- notifier_call_chain(&panic_notifier_list, 0, buf);
+ notifier_call_chain(&panic_notifier_list, 0, buf);
+
+ if (!panic_blink)
+ panic_blink = no_blink;
if (panic_timeout > 0)
{