Commit db54a53d authored by Luiz Fernando N. Capitulino's avatar Luiz Fernando N. Capitulino Committed by Greg Kroah-Hartman

[PATCH] usbserial: Fixes wrong return values.

Some usbserial functions returns -EINVAL if the port doesn't exist or if
it's not opened. However, the right error code for such situations is
-ENODEV.
Signed-off-by: default avatarLuiz Fernando N. Capitulino <lcapitulino@mandriva.com.br>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 043ea18b
...@@ -305,7 +305,7 @@ static int serial_write (struct tty_struct * tty, const unsigned char *buf, int ...@@ -305,7 +305,7 @@ static int serial_write (struct tty_struct * tty, const unsigned char *buf, int
static int serial_write_room (struct tty_struct *tty) static int serial_write_room (struct tty_struct *tty)
{ {
struct usb_serial_port *port = tty->driver_data; struct usb_serial_port *port = tty->driver_data;
int retval = -EINVAL; int retval = -ENODEV;
if (!port) if (!port)
goto exit; goto exit;
...@@ -327,7 +327,7 @@ static int serial_write_room (struct tty_struct *tty) ...@@ -327,7 +327,7 @@ static int serial_write_room (struct tty_struct *tty)
static int serial_chars_in_buffer (struct tty_struct *tty) static int serial_chars_in_buffer (struct tty_struct *tty)
{ {
struct usb_serial_port *port = tty->driver_data; struct usb_serial_port *port = tty->driver_data;
int retval = -EINVAL; int retval = -ENODEV;
if (!port) if (!port)
goto exit; goto exit;
...@@ -497,19 +497,18 @@ static int serial_tiocmget (struct tty_struct *tty, struct file *file) ...@@ -497,19 +497,18 @@ static int serial_tiocmget (struct tty_struct *tty, struct file *file)
struct usb_serial_port *port = tty->driver_data; struct usb_serial_port *port = tty->driver_data;
if (!port) if (!port)
goto exit; return -ENODEV;
dbg("%s - port %d", __FUNCTION__, port->number); dbg("%s - port %d", __FUNCTION__, port->number);
if (!port->open_count) { if (!port->open_count) {
dbg("%s - port not open", __FUNCTION__); dbg("%s - port not open", __FUNCTION__);
goto exit; return -ENODEV;
} }
if (port->serial->type->tiocmget) if (port->serial->type->tiocmget)
return port->serial->type->tiocmget(port, file); return port->serial->type->tiocmget(port, file);
exit:
return -EINVAL; return -EINVAL;
} }
...@@ -519,19 +518,18 @@ static int serial_tiocmset (struct tty_struct *tty, struct file *file, ...@@ -519,19 +518,18 @@ static int serial_tiocmset (struct tty_struct *tty, struct file *file,
struct usb_serial_port *port = tty->driver_data; struct usb_serial_port *port = tty->driver_data;
if (!port) if (!port)
goto exit; return -ENODEV;
dbg("%s - port %d", __FUNCTION__, port->number); dbg("%s - port %d", __FUNCTION__, port->number);
if (!port->open_count) { if (!port->open_count) {
dbg("%s - port not open", __FUNCTION__); dbg("%s - port not open", __FUNCTION__);
goto exit; return -ENODEV;
} }
if (port->serial->type->tiocmset) if (port->serial->type->tiocmset)
return port->serial->type->tiocmset(port, file, set, clear); return port->serial->type->tiocmset(port, file, set, clear);
exit:
return -EINVAL; return -EINVAL;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment