]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/usb/serial/sierra.c
USB: make sure usb serial drivers don't flush to logically disconnected devices
[linux-2.6-omap-h63xx.git] / drivers / usb / serial / sierra.c
index 953bdf8827d2720d1e155491b3961097f3c4755a..4c925e3e8a6387663447f56cd07bc5532c931ddc 100644 (file)
@@ -597,7 +597,10 @@ static void sierra_close(struct usb_serial_port *port, struct file *filp)
        portdata->dtr_state = 0;
 
        if (serial->dev) {
-               sierra_send_setup(port);
+               mutex_lock(&serial->disc_mutex);
+               if (!serial->disconnected)
+                       sierra_send_setup(port);
+               mutex_unlock(&serial->disc_mutex);
 
                /* Stop reading/writing urbs */
                for (i = 0; i < N_IN_URB; i++)