Re: about ENOSYS

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

 



subject have been missing, so I filled in something.

On Aug 3, 2015, at 2:18 AM, Shraddha Barke wrote:

> From b67c6c20455b04b77447ab4561e44f1a75dd978d Mon Sep 17 00:00:00 2001
> From: Shraddha Barke <shraddha.6596@xxxxxxxxx>
> Date: Mon, 3 Aug 2015 11:34:19 +0530
> Subject: [PATCH] Staging : lustre : Use -EINVAL instead of -ENOSYS
> 
> ENOSYS means that a nonexistent system call was called. This should
> not be used for invalid operations on otherwise valid syscalls.
> 
> Use -EINVAL instead of -ENOSYS. This fixes checkpatch warning message:
> 
> WARNING: ENOSYS means 'invalid syscall nr' and nothing else

Is this really true, though?
I know you are working off what the tool reports.
But in reality people have been using ENOSYS to indicate
"this thing that you want is not really available" 
Reading the define file we can see:
/usr/include/asm-generic/errno.h:#define	ENOSYS		38	/* Function not implemented */

$ grep -r 'ENOSYS;' fs/ | wc -l
75

So it's extensively used in the fs tree by existing code.

Hmm…. Searching some more I arrived at commit e15f431f
that changes the in-kernel comment and claims the "system call only stuff".

So Greg, do you want Lustre to get rid of use of ENOSYS (all 16 users we have),
or is it ok to leave them in?

> 
> Signed-off-by: Shraddha Barke <shraddha.6596@xxxxxxxxx>
> ---
> drivers/staging/lustre/lustre/llite/file.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/staging/lustre/lustre/llite/file.c b/drivers/staging/lustre/lustre/llite/file.c
> index 2c467bf..93619a8 100644
> --- a/drivers/staging/lustre/lustre/llite/file.c
> +++ b/drivers/staging/lustre/lustre/llite/file.c
> @@ -2786,7 +2786,7 @@ ll_file_flock(struct file *file, int cmd, struct file_lock *file_lock)
> static int
> ll_file_noflock(struct file *file, int cmd, struct file_lock *file_lock)
> {
> -	return -ENOSYS;
> +	return -EINVAL;
> }
> 
> /**
> -- 
> 2.1.0
> 

_______________________________________________
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