diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2008-02-20 15:49:53 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2008-04-25 00:16:38 -0400 |
commit | 9b0f2582d57d4c9081307c86e11afc9169de7d3e (patch) | |
tree | 77acda33a2be1f9a9fde1c63902cac126c10ebdb /drivers/usb/serial/ftdi_sio.c | |
parent | 2097890c43a8fe90763f31b0010fd6963f5512c8 (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>
Diffstat (limited to 'drivers/usb/serial/ftdi_sio.c')
-rw-r--r-- | drivers/usb/serial/ftdi_sio.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c index 3abb3c863647..4643212eb959 100644 --- a/drivers/usb/serial/ftdi_sio.c +++ b/drivers/usb/serial/ftdi_sio.c | |||
@@ -533,9 +533,8 @@ static int update_mctrl(struct usb_serial_port *port, unsigned int set, unsigned | |||
533 | } | 533 | } |
534 | 534 | ||
535 | buf = kmalloc(1, GFP_NOIO); | 535 | buf = kmalloc(1, GFP_NOIO); |
536 | if (!buf) { | 536 | if (!buf) |
537 | return -ENOMEM; | 537 | return -ENOMEM; |
538 | } | ||
539 | 538 | ||
540 | clear &= ~set; /* 'set' takes precedence over 'clear' */ | 539 | clear &= ~set; /* 'set' takes precedence over 'clear' */ |
541 | urb_value = 0; | 540 | urb_value = 0; |
@@ -568,6 +567,7 @@ static int update_mctrl(struct usb_serial_port *port, unsigned int set, unsigned | |||
568 | (clear & TIOCM_DTR) ? "LOW" : "unchanged", | 567 | (clear & TIOCM_DTR) ? "LOW" : "unchanged", |
569 | (set & TIOCM_RTS) ? "HIGH" : | 568 | (set & TIOCM_RTS) ? "HIGH" : |
570 | (clear & TIOCM_RTS) ? "LOW" : "unchanged"); | 569 | (clear & TIOCM_RTS) ? "LOW" : "unchanged"); |
570 | /* FIXME: locking on last_dtr_rts */ | ||
571 | priv->last_dtr_rts = (priv->last_dtr_rts & ~clear) | set; | 571 | priv->last_dtr_rts = (priv->last_dtr_rts & ~clear) | set; |
572 | } | 572 | } |
573 | return rv; | 573 | return rv; |