On Tue, Mar 3, 2020 at 2:43 PM Greg Kroah-Hartman
[off-list ref] wrote:
On Tue, Mar 03, 2020 at 02:34:42PM +0100, Miklos Szeredi wrote:
quoted
If buffer is too small to fit the whole file, return error.
Why? What's wrong with just returning the bytes asked for? If someone
only wants 5 bytes from the front of a file, it should be fine to give
that to them, right?
I think we need to signal in some way to the caller that the result
was truncated (see readlink(2), getxattr(2), getcwd(2)), otherwise the
caller might be surprised.
quoted
Verify that the number of bytes read matches the file size, otherwise
return error (may need to loop?).
No, we can't "match file size" as sysfs files do not really have a sane
"size". So I don't want to loop at all here, one-shot, that's all you
get :)
Hmm. I understand the no-size thing. But looping until EOF (i.e.
until read return zero) might be a good idea regardless, because short
reads are allowed.
Thanks,
Miklos