[PATCH] staging: comedi: replace ENOSYS by proper error codes
Ian Abbott
abbotti at mev.co.uk
Sun Jun 14 13:58:12 UTC 2015
On 12/06/15 21:20, julien.dehee at gmail.com wrote:
> From: Julien Dehee <julien.dehee at gmail.com>
>
> comedi/comedi_fops.c
> use ENODEV following open manual
>
> comedi/drivers.c
> use ENOTTY following ioctl manual
>
> drivers/serial2002.c
> use ENOTTY following ioctl manual
>
> Signed-off-by: Julien Dehee <julien.dehee at gmail.com>
> ---
> drivers/staging/comedi/comedi_fops.c | 2 +-
> drivers/staging/comedi/drivers.c | 2 +-
> drivers/staging/comedi/drivers/serial2002.c | 2 +-
> 3 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/staging/comedi/comedi_fops.c b/drivers/staging/comedi/comedi_fops.c
> index 146ab00..6896a1f 100644
> --- a/drivers/staging/comedi/comedi_fops.c
> +++ b/drivers/staging/comedi/comedi_fops.c
> @@ -2611,7 +2611,7 @@ static int comedi_open(struct inode *inode, struct file *file)
> }
> if (dev->attached && dev->use_count == 0) {
> if (!try_module_get(dev->driver->module)) {
> - rc = -ENOSYS;
> + rc = -ENODEV;
> goto out;
Seems reasonable as driver for the device is being unloaded.
> }
> if (dev->open) {
> diff --git a/drivers/staging/comedi/drivers.c b/drivers/staging/comedi/drivers.c
> index ed0b60c..db89096 100644
> --- a/drivers/staging/comedi/drivers.c
> +++ b/drivers/staging/comedi/drivers.c
> @@ -820,7 +820,7 @@ int comedi_device_attach(struct comedi_device *dev, struct comedi_devconfig *it)
> "driver '%s' does not support attach using comedi_config\n",
> driv->driver_name);
> module_put(driv->module);
> - ret = -ENOSYS;
> + ret = -ENOTTY;
> goto out;
I don't think ENOTTY is the correct error code here. the
COMEDI_DEVCONFIG ioctl code is an "appropriate" ioctl to send to a
comedi device. I'd suggest ENOTSUP as a replacement.
> }
> dev->driver = driv;
> diff --git a/drivers/staging/comedi/drivers/serial2002.c b/drivers/staging/comedi/drivers/serial2002.c
> index 83da162..929bf20 100644
> --- a/drivers/staging/comedi/drivers/serial2002.c
> +++ b/drivers/staging/comedi/drivers/serial2002.c
> @@ -101,7 +101,7 @@ static long serial2002_tty_ioctl(struct file *f, unsigned op,
> if (f->f_op->unlocked_ioctl)
> return f->f_op->unlocked_ioctl(f, op, param);
>
> - return -ENOSYS;
> + return -ENOTTY;
That is reasonable. It shouldn't happen anyway if 'f' really is linked
to a tty device. And the return value is currently ignored anyway!
> }
>
> static int serial2002_tty_write(struct file *f, unsigned char *buf, int count)
>
As Greg mentioned, it should be three different patches.
--
-=( Ian Abbott @ MEV Ltd. E-mail: <abbotti at mev.co.uk> )=-
-=( Web: http://www.mev.co.uk/ )=-
More information about the devel
mailing list