From: Johan Hovold Date: Wed, 26 Jun 2013 14:47:22 +0000 (+0200) Subject: USB: serial: clean up dtr_rts X-Git-Tag: upstream/snapshot3+hdmi~4476^2~195 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f5f45304512fa167883dbf7cc23ff92008b173e7;p=platform%2Fadaptation%2Frenesas_rcar%2Frenesas_kernel.git USB: serial: clean up dtr_rts Since commit 957dacae ("TTY: fix DTR not being dropped on hang up") dtr_rts is no longer called for uninitialised ports (e.g. after a disconnect), which removes the need to grab the disconnect mutex. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c index cb27fcb..6091bd5 100644 --- a/drivers/usb/serial/usb-serial.c +++ b/drivers/usb/serial/usb-serial.c @@ -681,20 +681,10 @@ static int serial_port_carrier_raised(struct tty_port *port) static void serial_port_dtr_rts(struct tty_port *port, int on) { struct usb_serial_port *p = container_of(port, struct usb_serial_port, port); - struct usb_serial *serial = p->serial; - struct usb_serial_driver *drv = serial->type; + struct usb_serial_driver *drv = p->serial->type; - if (!drv->dtr_rts) - return; - /* - * Work-around bug in the tty-layer which can result in dtr_rts - * being called after a disconnect (and tty_unregister_device - * has returned). Remove once bug has been squashed. - */ - mutex_lock(&serial->disc_mutex); - if (!serial->disconnected) + if (drv->dtr_rts) drv->dtr_rts(p, on); - mutex_unlock(&serial->disc_mutex); } static const struct tty_port_operations serial_port_ops = {