Re: [PATCH] PM / OPP: -ENOSYS is applicable only to syscalls

From: One Thousand Gnomes
Date: Fri Apr 22 2016 - 11:00:20 EST


On Fri, 22 Apr 2016 14:42:31 +0200
"Rafael J. Wysocki" <rjw@xxxxxxxxxxxxx> wrote:

> On Friday, April 22, 2016 08:46:51 AM Viresh Kumar wrote:
> > Some of the routines have use -ENOSYS, which is supposed to be used only
> > for syscalls. Replace that with -EINVAL.
>
> -EINVAL specifically means "invalid argument".
>
> What about using -ENXIO instead?

That specifically means "device not present", but might be reasonable.
Quite a bit of the kernel uses EOPNOTSUPP (operation not supported).

Before you change it though please check how existing userspace does
error handling. It's nice to use more "correct" error codes, but that's
not sufficient reason if it turns out that existing user space checks for
ENOSYS for example.

Alan