diff options
author | Oliver Neukum <oneukum@suse.de> | 2007-03-29 10:45:17 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2007-04-27 13:28:38 -0700 |
commit | 2f007de2f4296e4dafae6ab0b3cc1bc49443137a (patch) | |
tree | 783f9fc150e8271edb9c78156c2e43bb02ba53e2 /drivers | |
parent | 9306fff17d3852e088dfc512e6f6673f3d80e71e (diff) | |
download | linux-2f007de2f4296e4dafae6ab0b3cc1bc49443137a.tar.bz2 |
USB: fix error handling for mct_u232
we report errors to the caller. THis patch adds error handling to the driver.
Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/usb/serial/mct_u232.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/usb/serial/mct_u232.c b/drivers/usb/serial/mct_u232.c index 4cd839b1407f..3db1adc25f84 100644 --- a/drivers/usb/serial/mct_u232.c +++ b/drivers/usb/serial/mct_u232.c @@ -438,17 +438,21 @@ static int mct_u232_open (struct usb_serial_port *port, struct file *filp) if (retval) { err("usb_submit_urb(read bulk) failed pipe 0x%x err %d", port->read_urb->pipe, retval); - goto exit; + goto error; } port->interrupt_in_urb->dev = port->serial->dev; retval = usb_submit_urb(port->interrupt_in_urb, GFP_KERNEL); - if (retval) + if (retval) { + usb_kill_urb(port->read_urb); err(" usb_submit_urb(read int) failed pipe 0x%x err %d", port->interrupt_in_urb->pipe, retval); - -exit: + goto error; + } return 0; + +error: + return retval; } /* mct_u232_open */ |