Skip to content

Commit

Permalink
[PATCH] usbserial: Fixes wrong return values.
Browse files Browse the repository at this point in the history
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: Luiz Fernando N. Capitulino <lcapitulino@mandriva.com.br>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
Luiz Fernando N. Capitulino authored and Greg Kroah-Hartman committed Jun 21, 2006
1 parent 043ea18 commit db54a53
Showing 1 changed file with 6 additions and 8 deletions.
14 changes: 6 additions & 8 deletions drivers/usb/serial/usb-serial.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
{
struct usb_serial_port *port = tty->driver_data;
int retval = -EINVAL;
int retval = -ENODEV;

if (!port)
goto exit;
Expand All @@ -327,7 +327,7 @@ static int serial_write_room (struct tty_struct *tty)
static int serial_chars_in_buffer (struct tty_struct *tty)
{
struct usb_serial_port *port = tty->driver_data;
int retval = -EINVAL;
int retval = -ENODEV;

if (!port)
goto exit;
Expand Down Expand Up @@ -497,19 +497,18 @@ static int serial_tiocmget (struct tty_struct *tty, struct file *file)
struct usb_serial_port *port = tty->driver_data;

if (!port)
goto exit;
return -ENODEV;

dbg("%s - port %d", __FUNCTION__, port->number);

if (!port->open_count) {
dbg("%s - port not open", __FUNCTION__);
goto exit;
return -ENODEV;
}

if (port->serial->type->tiocmget)
return port->serial->type->tiocmget(port, file);

exit:
return -EINVAL;
}

Expand All @@ -519,19 +518,18 @@ static int serial_tiocmset (struct tty_struct *tty, struct file *file,
struct usb_serial_port *port = tty->driver_data;

if (!port)
goto exit;
return -ENODEV;

dbg("%s - port %d", __FUNCTION__, port->number);

if (!port->open_count) {
dbg("%s - port not open", __FUNCTION__);
goto exit;
return -ENODEV;
}

if (port->serial->type->tiocmset)
return port->serial->type->tiocmset(port, file, set, clear);

exit:
return -EINVAL;
}

Expand Down

0 comments on commit db54a53

Please sign in to comment.