On 22-04-16, 15:59, One Thousand Gnomes wrote:
On Fri, 22 Apr 2016 14:42:31 +0200 "Rafael J. Wysocki" rjw@rjwysocki.net 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).
That looks reasonable to me.. Will switch to that.
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.
Userspace doesn't interact directly with this stuff, its pretty much within the kernel. So it should be fine.
Thanks Alan.