Re: [PATCH 1/3] Return ENODEV instead of EINVAL when trying to open ACM device.

Oliver Neukum
2009-06-24T21:17:14Z

Am Mittwoch, 24. Juni 2009 22:40:15 schrieb Greg KH:
> On Wed, Jun 24, 2009 at 08:31:15AM -0300, Thadeu Lima de Souza Cascardo wrote:
> > Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
> > ---
> > drivers/usb/class/cdc-acm.c | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
> > index 38bfdb0..02eb60b 100644
> > --- a/drivers/usb/class/cdc-acm.c
> > +++ b/drivers/usb/class/cdc-acm.c
> > @@ -550,7 +550,7 @@ static void acm_waker(struct work_struct *waker)
> > static int acm_tty_open(struct tty_struct *tty, struct file *filp)
> > {
> > struct acm *acm;
> > - int rv = -EINVAL;
> > + int rv = -ENODEV;
>
> Why is this needed?

The current error return is incorrect. If the table entry is gone, the
device has been disconnected, hence -ENODEV.

Regards
Oliver
Acked-by: Oliver Neukum <oliver@neukum.org>