Messages in this thread |  | | Date | Mon, 28 Oct 2013 19:22:47 +0200 | From | Vladimir Zapolskiy <> | Subject | Re: [PATCH] sysfs: return correct error code on unimplemented mmap() |
| |
On 10/28/13 18:35, Greg Kroah-Hartman wrote: > On Mon, Oct 28, 2013 at 06:28:30PM +0200, Vladimir Zapolskiy wrote: >> Both POSIX.1-2008 and Linux Programmer's Manual have a dedicated return >> error code for a case, when a file doesn't support mmap(), it's ENODEV. >> >> This change replaces overloaded EINVAL with ENODEV in a situation >> described above for sysfs binary files. >> >> Signed-off-by: Vladimir Zapolskiy<vladimir_zapolskiy@mentor.com> >> Cc: Greg Kroah-Hartman<gregkh@linuxfoundation.org> > > Is this a problem in linux-next or 3.12-rc7 and older kernels? What > userspace tool is breaking here?
The patch itself is against 3.12-rc7, but the same problem can be found in older kernels as well.
I assume the bugfix is quite safe, because both EINVAL and ENODEV should be handled by user space tools, however for developers it might be beneficial to distinguish cases of completely not supported mmap() and supported but misused mmap() applied to a binary sysfs file. At the moment from the user space perspective there is no indication of unsupported mmap() over a file in sysfs.
With best wishes, Vladimir
|  |