]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/usb/serial/cp2101.c
USB: more serial drivers writing after disconnect
[karo-tx-linux.git] / drivers / usb / serial / cp2101.c
index cd5f71b7f6372b251967c317f8829450e508c912..f3ca66017a031ba81db256216b905b4cf3989efa 100644 (file)
@@ -348,7 +348,10 @@ static void cp2101_close (struct usb_serial_port *port, struct file * filp)
        usb_kill_urb(port->write_urb);
        usb_kill_urb(port->read_urb);
 
-       cp2101_set_config_single(port, CP2101_UART, UART_DISABLE);
+       mutex_lock(&port->serial->disc_mutex);
+       if (!port->serial->disconnected)
+               cp2101_set_config_single(port, CP2101_UART, UART_DISABLE);
+       mutex_unlock(&port->serial->disc_mutex);
 }
 
 /*