Ports the ir-usb driver from write_urb_busy spin_lock to
usb_serial_write_urb_lock() functions.
Signed-off-by: Luiz Capitulino <[email protected]>
drivers/usb/serial/ir-usb.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
diff -Nparu -X /home/lcapitulino/kernels/dontdiff a/drivers/usb/serial/ir-usb.c a~/drivers/usb/serial/ir-usb.c
--- a/drivers/usb/serial/ir-usb.c 2005-12-04 01:44:19.000000000 -0200
+++ a~/drivers/usb/serial/ir-usb.c 2005-12-04 14:43:39.000000000 -0200
@@ -55,7 +55,6 @@
#include <linux/tty_driver.h>
#include <linux/tty_flip.h>
#include <linux/module.h>
-#include <linux/spinlock.h>
#include <asm/uaccess.h>
#include <linux/usb.h>
#include "usb-serial.h"
@@ -344,14 +343,10 @@ static int ir_write (struct usb_serial_p
if (count == 0)
return 0;
- spin_lock(&port->lock);
- if (port->write_urb_busy) {
- spin_unlock(&port->lock);
+ if (usb_serial_write_urb_lock(port)) {
dbg("%s - already writing", __FUNCTION__);
return 0;
}
- port->write_urb_busy = 1;
- spin_unlock(&port->lock);
transfer_buffer = port->write_urb->transfer_buffer;
transfer_size = min(count, port->bulk_out_size - 1);
@@ -382,7 +377,7 @@ static int ir_write (struct usb_serial_p
result = usb_submit_urb (port->write_urb, GFP_ATOMIC);
if (result) {
- port->write_urb_busy = 0;
+ usb_serial_write_urb_unlock(port);
dev_err(&port->dev, "%s - failed submitting write urb, error %d\n", __FUNCTION__, result);
} else
result = transfer_size;
@@ -396,7 +391,7 @@ static void ir_write_bulk_callback (stru
dbg("%s - port %d", __FUNCTION__, port->number);
- port->write_urb_busy = 0;
+ usb_serial_write_urb_unlock(port);
if (urb->status) {
dbg("%s - nonzero write bulk status received: %d", __FUNCTION__, urb->status);
return;
--
Luiz Fernando N. Capitulino
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]