]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge 3.9-rc7 intp tty-next
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 15 Apr 2013 02:13:28 +0000 (19:13 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 15 Apr 2013 02:13:28 +0000 (19:13 -0700)
We want the fixes here.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1  2 
drivers/tty/mxser.c

diff --combined drivers/tty/mxser.c
index d996038eacfd3d43ca3583ff69d02a8736601ff9,302909ccf18383831e5f6091f167be354b4db989..71d6eb2c93b1c6335ba123cc9ac3c17a2af0d805
@@@ -1084,10 -1084,6 +1084,10 @@@ static void mxser_close(struct tty_stru
        mutex_lock(&port->mutex);
        mxser_close_port(port);
        mxser_flush_buffer(tty);
 +      if (test_bit(ASYNCB_INITIALIZED, &port->flags)) {
 +              if (C_HUPCL(tty))
 +                      tty_port_lower_dtr_rts(port);
 +      }
        mxser_shutdown_port(port);
        clear_bit(ASYNCB_INITIALIZED, &port->flags);
        mutex_unlock(&port->mutex);
@@@ -2647,9 -2643,9 +2647,9 @@@ static int mxser_probe(struct pci_dev *
                                mxvar_sdriver, brd->idx + i, &pdev->dev);
                if (IS_ERR(tty_dev)) {
                        retval = PTR_ERR(tty_dev);
-                       for (i--; i >= 0; i--)
+                       for (; i > 0; i--)
                                tty_unregister_device(mxvar_sdriver,
-                                       brd->idx + i);
+                                       brd->idx + i - 1);
                        goto err_relbrd;
                }
        }
@@@ -2755,9 -2751,9 +2755,9 @@@ static int __init mxser_module_init(voi
                        tty_dev = tty_port_register_device(&brd->ports[i].port,
                                        mxvar_sdriver, brd->idx + i, NULL);
                        if (IS_ERR(tty_dev)) {
-                               for (i--; i >= 0; i--)
+                               for (; i > 0; i--)
                                        tty_unregister_device(mxvar_sdriver,
-                                               brd->idx + i);
+                                               brd->idx + i - 1);
                                for (i = 0; i < brd->info->nports; i++)
                                        tty_port_destroy(&brd->ports[i].port);
                                free_irq(brd->irq, brd);