Merge tag 'xarray-5.7' of git://git.infradead.org/users/willy/linux-dax
[linux-2.6-microblaze.git] / drivers / usb / serial / generic.c
index 1be8bea..5cdf180 100644 (file)
@@ -417,7 +417,7 @@ void usb_serial_generic_read_bulk_callback(struct urb *urb)
        /*
         * Make sure URB is marked as free before checking the throttled flag
         * to avoid racing with unthrottle() on another CPU. Matches the
-        * smp_mb() in unthrottle().
+        * smp_mb__after_atomic() in unthrottle().
         */
        smp_mb__after_atomic();
 
@@ -489,7 +489,7 @@ void usb_serial_generic_unthrottle(struct tty_struct *tty)
         * Matches the smp_mb__after_atomic() in
         * usb_serial_generic_read_bulk_callback().
         */
-       smp_mb();
+       smp_mb__after_atomic();
 
        usb_serial_generic_submit_read_urbs(port, GFP_KERNEL);
 }
@@ -609,12 +609,10 @@ EXPORT_SYMBOL_GPL(usb_serial_handle_break);
  * @tty: tty for the port
  * @status: new carrier detect status, nonzero if active
  */
-void usb_serial_handle_dcd_change(struct usb_serial_port *usb_port,
+void usb_serial_handle_dcd_change(struct usb_serial_port *port,
                                struct tty_struct *tty, unsigned int status)
 {
-       struct tty_port *port = &usb_port->port;
-
-       dev_dbg(&usb_port->dev, "%s - status %d\n", __func__, status);
+       dev_dbg(&port->dev, "%s - status %d\n", __func__, status);
 
        if (tty) {
                struct tty_ldisc *ld = tty_ldisc_ref(tty);
@@ -627,7 +625,7 @@ void usb_serial_handle_dcd_change(struct usb_serial_port *usb_port,
        }
 
        if (status)
-               wake_up_interruptible(&port->open_wait);
+               wake_up_interruptible(&port->port.open_wait);
        else if (tty && !C_CLOCAL(tty))
                tty_hangup(tty);
 }