summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Cox <alan@lxorguk.ukuu.org.uk>2008-02-20 20:49:53 +0000
committerStephen Rothwell <sfr@canb.auug.org.au>2008-02-22 11:51:12 +1100
commit0272fcf8034b97aaf035e55fc57f6aab627714d4 (patch)
tree31f547b72b216132a65c8e4a0012e7c2ccfbceda
parent1b922d39a52983c0bf5299eacb247665683390c0 (diff)
USB: ftdi_sio: Note missing locking
The ftdi_sio driver has no internal locking on the dtr/rts state. Flag that up for someone to fix. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/usb/serial/ftdi_sio.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c
index 76db2fef4657..1dde2cc8c33c 100644
--- a/drivers/usb/serial/ftdi_sio.c
+++ b/drivers/usb/serial/ftdi_sio.c
@@ -524,9 +524,8 @@ static int update_mctrl(struct usb_serial_port *port, unsigned int set, unsigned
}
buf = kmalloc(1, GFP_NOIO);
- if (!buf) {
+ if (!buf)
return -ENOMEM;
- }
clear &= ~set; /* 'set' takes precedence over 'clear' */
urb_value = 0;
@@ -559,6 +558,7 @@ static int update_mctrl(struct usb_serial_port *port, unsigned int set, unsigned
(clear & TIOCM_DTR) ? "LOW" : "unchanged",
(set & TIOCM_RTS) ? "HIGH" :
(clear & TIOCM_RTS) ? "LOW" : "unchanged");
+ /* FIXME: locking on last_dtr_rts */
priv->last_dtr_rts = (priv->last_dtr_rts & ~clear) | set;
}
return rv;