]> Pileus Git - ~andy/linux/blobdiff - drivers/usb/gadget/u_serial.c
Merge remote-tracking branch 'asoc/fix/arizona' into tmp
[~andy/linux] / drivers / usb / gadget / u_serial.c
index f1739526820fdfceb3cd0749fa2047cff220605b..d0f95482f40e8058a24f27b161f33beb55bb3c4d 100644 (file)
@@ -1145,8 +1145,10 @@ int gserial_setup(struct usb_gadget *g, unsigned count)
 
        return status;
 fail:
-       while (count--)
+       while (count--) {
+               tty_port_destroy(&ports[count].port->port);
                kfree(ports[count].port);
+       }
        put_tty_driver(gs_tty_driver);
        gs_tty_driver = NULL;
        return status;
@@ -1200,6 +1202,7 @@ void gserial_cleanup(void)
 
                WARN_ON(port->port_usb != NULL);
 
+               tty_port_destroy(&port->port);
                kfree(port);
        }
        n_ports = 0;