--- ./drivers/char/tty_io.c.fix 2004-01-17 18:41:19.000000000 +0100 +++ ./drivers/char/tty_io.c 2004-01-17 19:10:18.000000000 +0100 @@ -2419,18 +2419,12 @@ static struct cdev vc0_cdev; #endif -static int tty_initialized; - /* * Ok, now we can initialize the rest of the tty devices and can count * on memory allocations, interrupts etc.. */ -int __init tty_init(void) +static int __init tty_init(void) { - if (tty_initialized) - return 0; - tty_initialized = 1; - strcpy(tty_cdev.kobj.name, "dev.tty"); cdev_init(&tty_cdev, &tty_fops); if (cdev_add(&tty_cdev, MKDEV(TTYAUX_MAJOR, 0), 1) || --- ./arch/um/drivers/ssl.c.fix 2004-01-17 18:41:11.000000000 +0100 +++ ./arch/um/drivers/ssl.c 2004-01-17 19:11:06.000000000 +0100 @@ -217,8 +217,6 @@ */ static int ssl_init_done = 0; -extern int tty_init(void); - static void ssl_console_write(struct console *c, const char *string, unsigned len) { @@ -257,8 +255,6 @@ printk(KERN_INFO "Initializing software serial port version %d\n", ssl_version); - tty_init(); - ssl_driver = line_register_devfs(&lines, &driver, &ssl_ops, serial_lines, sizeof(serial_lines)/sizeof(serial_lines[0])); @@ -272,7 +268,7 @@ return(0); } -__initcall(ssl_init); +late_initcall(ssl_init); static int ssl_chan_setup(char *str) { --- ./arch/um/drivers/stdio_console.c.fix 2004-01-17 18:41:11.000000000 +0100 +++ ./arch/um/drivers/stdio_console.c 2004-01-17 19:11:40.000000000 +0100 @@ -169,16 +169,12 @@ .write_room = line_write_room, }; -extern int tty_init(void); - int stdio_init(void) { char *new_title; printk(KERN_INFO "Initializing stdio console driver\n"); - tty_init(); - console_driver = line_register_devfs(&console_lines, &driver, &console_ops, vts, sizeof(vts)/sizeof(vts[0])); @@ -193,7 +189,7 @@ return(0); } -__initcall(stdio_init); +late_initcall(stdio_init); static void console_write(struct console *console, const char *string, unsigned len)