summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuiz Fernando N. Capitulino <lcapitulino@mandriva.com.br>2006-07-11 14:19:25 -0300
committerGreg Kroah-Hartman <gregkh@suse.de>2006-07-12 16:03:25 -0700
commit166ffccfd4556ac6a777982d193ae145bb0a21e0 (patch)
tree0312cc2247c9cd37db18cfa3600483c4da070945
parenta353678d3136306c1d00f0d2319de1dac8a6b1db (diff)
downloadlwn-166ffccfd4556ac6a777982d193ae145bb0a21e0.tar.gz
lwn-166ffccfd4556ac6a777982d193ae145bb0a21e0.zip
[PATCH] USB: Anydata: Fixes wrong URB callback.
Anydata is using usb_serial_generic_write_bulk_callback() for its read URB, but it should use usb_serial_generic_read_bulk_callback() instead (it's a read URB, isn't it?). Reported by Jon K Hellan <hellan@acm.org>. Signed-off-by: Luiz Fernando N. Capitulino <lcapitulino@mandriva.com.br> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/usb/serial/anydata.c2
-rw-r--r--drivers/usb/serial/generic.c1
2 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/serial/anydata.c b/drivers/usb/serial/anydata.c
index 343f6f228220..dadf2838f942 100644
--- a/drivers/usb/serial/anydata.c
+++ b/drivers/usb/serial/anydata.c
@@ -71,7 +71,7 @@ static int anydata_open(struct usb_serial_port *port, struct file *filp)
port->bulk_in_endpointAddress),
port->read_urb->transfer_buffer,
port->read_urb->transfer_buffer_length,
- usb_serial_generic_write_bulk_callback, port);
+ usb_serial_generic_read_bulk_callback, port);
result = usb_submit_urb(port->read_urb, GFP_KERNEL);
if (result)
dev_err(&port->dev,
diff --git a/drivers/usb/serial/generic.c b/drivers/usb/serial/generic.c
index 945b8bb38c92..99872e13ba2d 100644
--- a/drivers/usb/serial/generic.c
+++ b/drivers/usb/serial/generic.c
@@ -285,6 +285,7 @@ void usb_serial_generic_read_bulk_callback (struct urb *urb, struct pt_regs *reg
if (result)
dev_err(&port->dev, "%s - failed resubmitting read urb, error %d\n", __FUNCTION__, result);
}
+EXPORT_SYMBOL_GPL(usb_serial_generic_read_bulk_callback);
void usb_serial_generic_write_bulk_callback (struct urb *urb, struct pt_regs *regs)
{