Re: [PATCH] staging: comedi: replace ENOSYS by proper error codes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/06/15 21:20, julien.dehee@xxxxxxxxx wrote:
From: Julien Dehee <julien.dehee@xxxxxxxxx>

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@xxxxxxxxx>
---
  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@xxxxxxxxx> )=-
-=(                          Web: http://www.mev.co.uk/  )=-
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel



[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux