]> Pileus Git - ~andy/linux/blobdiff - arch/parisc/kernel/pdc_cons.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next
[~andy/linux] / arch / parisc / kernel / pdc_cons.c
index 88238638aee67a7c6bf84cdc23756806c16a5d77..efc5e7d30530666832bb8e4600d5491fb99fcff6 100644 (file)
@@ -186,13 +186,13 @@ static int __init pdc_console_tty_driver_init(void)
        printk(KERN_INFO "The PDC console driver is still registered, removing CON_BOOT flag\n");
        pdc_cons.flags &= ~CON_BOOT;
 
-       tty_port_init(&tty_port);
-
        pdc_console_tty_driver = alloc_tty_driver(1);
 
        if (!pdc_console_tty_driver)
                return -ENOMEM;
 
+       tty_port_init(&tty_port);
+
        pdc_console_tty_driver->driver_name = "pdc_cons";
        pdc_console_tty_driver->name = "ttyB";
        pdc_console_tty_driver->major = MUX_MAJOR;
@@ -207,6 +207,7 @@ static int __init pdc_console_tty_driver_init(void)
        err = tty_register_driver(pdc_console_tty_driver);
        if (err) {
                printk(KERN_ERR "Unable to register the PDC console TTY driver\n");
+               tty_port_destroy(&tty_port);
                return err;
        }