* [PATCH] console close race fix
@ 2001-12-09 23:15 Robert Love
0 siblings, 0 replies; only message in thread
From: Robert Love @ 2001-12-09 23:15 UTC (permalink / raw)
To: marcelo; +Cc: linux-kernel
Marcelo,
The attached is a fix originally by Andrew Morton and discovered by the
preempt-kernel patch. It is in Alan's tree but was never merged into
Linus's.
There is a race between con_close and con_flush_chars.
n_tty_receive_buf writes to the tty queue and then flushes it via
con_flush_chars. If the console closes in between these operations,
con_flush_char barfs.
Please, for all that is righteous, apply.
Robert Love
diff -urN linux-2.4.17-pre7/drivers/char/console.c linux/drivers/char/console.c
--- linux-2.4.17-pre6/drivers/char/console.c Thu Dec 6 14:08:14 2001
+++ linux/drivers/char/console.c Thu Dec 6 14:09:06 2001
@@ -2356,8 +2356,14 @@
return;
pm_access(pm_con);
+
+ /*
+ * If we raced with con_close(), `vt' may be null.
+ * Hence this bandaid. - akpm
+ */
acquire_console_sem();
- set_cursor(vt->vc_num);
+ if (vt)
+ set_cursor(vt->vc_num);
release_console_sem();
}
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2001-12-09 23:16 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-12-09 23:15 [PATCH] console close race fix Robert Love
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.