aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial/opticon.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/serial/opticon.c')
-rw-r--r--drivers/usb/serial/opticon.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/usb/serial/opticon.c b/drivers/usb/serial/opticon.c
index 80f59b6350cb..4cdb975caa89 100644
--- a/drivers/usb/serial/opticon.c
+++ b/drivers/usb/serial/opticon.c
@@ -501,12 +501,13 @@ static int opticon_resume(struct usb_interface *intf)
501 struct usb_serial_port *port = serial->port[0]; 501 struct usb_serial_port *port = serial->port[0];
502 int result; 502 int result;
503 503
504 mutex_lock(&port->mutex); 504 mutex_lock(&port->port.mutex);
505 if (port->port.count) 505 /* This is protected by the port mutex against close/open */
506 if (test_bit(ASYNCB_INITIALIZED, &port->port.flags))
506 result = usb_submit_urb(priv->bulk_read_urb, GFP_NOIO); 507 result = usb_submit_urb(priv->bulk_read_urb, GFP_NOIO);
507 else 508 else
508 result = 0; 509 result = 0;
509 mutex_unlock(&port->mutex); 510 mutex_unlock(&port->port.mutex);
510 return result; 511 return result;
511} 512}
512 513