aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Beulich <JBeulich@novell.com>2005-06-17 16:20:58 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-18 16:33:01 -0400
commitcc63b1e12b378c44e074571d5688c23be823b04c (patch)
treef8feb187a8e8e12c822bb9fc18804f76341b1c45
parent43fde784a698aff26de0fc1dbd84aa075b8cfb5f (diff)
[PATCH] console blanking oops fix
When significant delays happen during boot (e.g. with a kernel debugger, but the problem has also seen in other cases) the timeout for blanking the console may trigger, but the work scheduler may not have been initialized, yet. schedule_work() will oops over the null keventd_wq. Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/char/vt.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/char/vt.c b/drivers/char/vt.c
index e5ef1dfc5482..d7aa7a29f67e 100644
--- a/drivers/char/vt.c
+++ b/drivers/char/vt.c
@@ -2867,6 +2867,10 @@ void unblank_screen(void)
2867 */ 2867 */
2868static void blank_screen_t(unsigned long dummy) 2868static void blank_screen_t(unsigned long dummy)
2869{ 2869{
2870 if (unlikely(!keventd_up())) {
2871 mod_timer(&console_timer, jiffies + blankinterval);
2872 return;
2873 }
2870 blank_timer_expired = 1; 2874 blank_timer_expired = 1;
2871 schedule_work(&console_work); 2875 schedule_work(&console_work);
2872} 2876}