Bug 86061
Summary: | Condition for read(2) to return EINVAL is inaccurate | ||
---|---|---|---|
Product: | Documentation | Reporter: | NODA, Kai (nodakai) |
Component: | man-pages | Assignee: | documentation_man-pages (documentation_man-pages) |
Status: | RESOLVED CODE_FIX | ||
Severity: | normal | CC: | mtk.manpages |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | Subsystem: | ||
Regression: | No | Bisected commit-id: |
Description
NODA, Kai
2014-10-11 19:58:04 UTC
Thanks for the report. So, I've changed the text in read(2) to say: According to POSIX.1, if count is greater than SSIZE_MAX, the result is implementation-defined; see NOTES for the upper limit on Linux. Further down in that page, there is already this text: On Linux, read() (and similar system calls) will transfer at most 0x7ffff000 (2,147,479,552) bytes, returning the number of bytes actually transferred. (This is true on both 32-bit and 64-bit systems.) In write(2), I've also added this: According to POSIX.1, if count is greater than SSIZE_MAX, the result is implementation-defined; see NOTES for the upper limit on Linux. I hope this suffices. For now, I will close this bug. Please reopen, if you think more work is needed. |