usb_serial: Kill port mutex
authorAlan Cox <alan@linux.intel.com>
Tue, 6 Oct 2009 15:06:46 +0000 (16:06 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 11 Dec 2009 23:18:04 +0000 (15:18 -0800)
The tty port has a port mutex used for all the port related locking so we
don't need the one in the USB serial layer any more.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Oliver Neukum <oliver@neukum.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/serial/opticon.c
drivers/usb/serial/usb-serial.c
include/linux/usb/serial.h

index 80f59b6..c03fdc0 100644 (file)
@@ -501,12 +501,12 @@ static int opticon_resume(struct usb_interface *intf)
        struct usb_serial_port *port = serial->port[0];
        int result;
 
-       mutex_lock(&port->mutex);
+       mutex_lock(&port->port.mutex);
        if (port->port.count)
                result = usb_submit_urb(priv->bulk_read_urb, GFP_NOIO);
        else
                result = 0;
-       mutex_unlock(&port->mutex);
+       mutex_unlock(&port->port.mutex);
        return result;
 }
 
index 829a466..4543f35 100644 (file)
@@ -897,7 +897,6 @@ int usb_serial_probe(struct usb_interface *interface,
                spin_lock_init(&port->lock);
                /* Keep this for private driver use for the moment but
                   should probably go away */
-               mutex_init(&port->mutex);
                INIT_WORK(&port->work, usb_serial_port_work);
                serial->port[i] = port;
                port->dev.parent = &interface->dev;
index ce911eb..acf6e45 100644 (file)
@@ -39,8 +39,6 @@ enum port_dev_state {
  * @serial: pointer back to the struct usb_serial owner of this port.
  * @port: pointer to the corresponding tty_port for this port.
  * @lock: spinlock to grab when updating portions of this structure.
- * @mutex: mutex used to synchronize serial_open() and serial_close()
- *     access for this port.
  * @number: the number of the port (the minor number).
  * @interrupt_in_buffer: pointer to the interrupt in buffer for this port.
  * @interrupt_in_urb: pointer to the interrupt in struct urb for this port.
@@ -77,7 +75,6 @@ struct usb_serial_port {
        struct usb_serial       *serial;
        struct tty_port         port;
        spinlock_t              lock;
-       struct mutex            mutex;
        unsigned char           number;
 
        unsigned char           *interrupt_in_buffer;