Got it. It was introduced in console.c:1.13 change from jsimmons. Before
this change we did not registered tty driver:
con_init says:
const char* display_desc = NULL;
if (conswitchp) display_desc = conswitchp->con_startup();
if (!display_desc) {
fg_console = 0;
return;
}
...
if (tty_register_driver(&console_driver)) ...
so we did not registered VT subsystem and panic did not happened:
instead of that you got 'cannot open initial console' or something
like that...
But after change tty_register_driver is invoked (through vty_init)
unconditionally from tty_io.c, where it depends only on CONFIG_VT.
So quick untested fix is
--- a/drivers/char/console.c Tue Jul 16 01:22:31 2002
+++ b/drivers/char/console.c Fri Jul 19 00:12:01 2002
@@ -2487,6 +2487,9 @@
int __init vty_init(void)
{
+ if (!conswitchp) {
+ return 0;
+ }
memset(&console_driver, 0, sizeof(struct tty_driver));
console_driver.magic = TTY_DRIVER_MAGIC;
console_driver.name = "vc/%d";
But I'll leave final decision at James, maybe he want to support
VT without underlying console, and testing almost same condition
on two places looks suspicious to me. Either we need blank timer
and console, or do not. But registering one half in vty_init,
and second half in con_init?
Best regards,
Petr Vandrovec
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/