Michael Kerrisk [Mon, 6 Oct 2008 13:29:45 +0000 (15:29 +0200)]
fallocate.2: Note lack of glibc wrapper; caller must use syscall(2)
Glibc doesn't (and quite probably won't) include a wrapper for this
system call. Therefore, point out that potential callers will need
to use syscall(2), and rewrite the RETURN VALUE text to show things
as they would be if syscall() is used.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Mon, 6 Oct 2008 13:08:21 +0000 (15:08 +0200)]
fallocate: Refer reader to posix_fallocate(3) for portable interface
Add a para to start of page that points out that this is the
low-level, Linux-specific API, and point the reader to posix_fallocate(3)
for the portable API.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Mon, 6 Oct 2008 12:23:00 +0000 (14:23 +0200)]
proc.5: rewrite and simplify description of /proc/mounts
Most of the relevant discussion is now under /proc/PID/mounts;
all that needs to be here is a mention of the pre-2.4.19
system-wide namespace situation, and a reference to the
discussion under /proc/PID/mounts.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Mon, 6 Oct 2008 11:09:26 +0000 (13:09 +0200)]
mount.2, umount.2: split umoun*() out into a separate page
The length of this page means that it's becoming difficult to parse
which info is specific to mount() versus umount()/umount2(), so split
the umount material out into its own page.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Sun, 5 Oct 2008 03:59:32 +0000 (05:59 +0200)]
execve.2: _SC_ARG_MAX is no longer necessarily constant
POSIX.1-2001 says that the values returned by sysconf()
are constant for the life of the process.
But the fact that, since Linux 2.6.23, ARG_MAX is settable
via RLIMIT_STACK means _SC_ARG_MAX is no longer constant,
since it can change at each execve().
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Sun, 5 Oct 2008 03:57:52 +0000 (05:57 +0200)]
execve.2: Linux now imposes a floor on the ARG_MAX limit
Starting with Linux 2.6.23, the ARG_MAX limit became settable via
(1/4 of) RLIMIT_STACK. This broke ABI compatibility if RLIMIT_STACK
was set such that ARG_MAX was < 32 pages. Document the fact that
since 2.6.25 Linux imposes a floor on ARG_MAX, so that the old limit
of 32 pages is guaranteed.
For some background on the changes to ARG_MAX in kernels 2.6.23 and
2.6.25, see:
http://sourceware.org/bugzilla/show_bug.cgi?id=5786
http://bugzilla.kernel.org/show_bug.cgi?id=10095
http://thread.gmane.org/gmane.linux.kernel/646709/focus=648101,
checked into 2.6.25 as commit a64e715fc74b1a7dcc5944f848acc38b2c4d4ee2.
Also some reordering/rewording of the discussion of ARG_MAX.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Sat, 4 Oct 2008 05:36:18 +0000 (07:36 +0200)]
sigwaitinfo.2: these interfaces have per-thread semantics
The page was previously fuzzy about whether the these interfaces
have process-wide or per-thread semantics. (E.g., now the
page states that the calling *thread* (not process) is suspended
until the signal is delivered.)
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Thu, 2 Oct 2008 11:23:25 +0000 (13:23 +0200)]
readdir.2: remove words "which may change"
These words are slightly bogus: although the interface is obsolete,
for ABI-compatibility reasons, the kernel folk should never be changing
this interface.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Thu, 2 Oct 2008 11:07:58 +0000 (13:07 +0200)]
getdents.2: comment out linux_dirent fields with varying location
The location of the fields fater d_name varies according to
the size of d_name. We can't properly declare them in C;
therefore, put those fields inside a comment.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Thu, 2 Oct 2008 09:15:28 +0000 (11:15 +0200)]
getdents.2: s/dirent/linux_dirent/
The structure isn't currently defined in glibc headers, and the kernel
name of the structure is 'linux_dirent' (as was already used in some,
but not all, places in this page).
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Michael Kerrisk [Mon, 29 Sep 2008 11:42:58 +0000 (13:42 +0200)]
fma.3: Add some source code comments explaining two domain error cases.
Two of the "domain error" cases described on this page are treated in
the same way on Linux, but POSIX.1 specifies some optional differences
for the two cases. Make life easier for future page reviewers/editors
by adding some comments explaining that POSIX.1-2001 distinguishes
the two cases.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com> Reported-by: Nicolas François <nicolas.francois@centraliens.net>
Nicolas François [Mon, 29 Sep 2008 11:01:44 +0000 (13:01 +0200)]
atan2.3: Fix error in description of range or return value
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
In recent changes to the man page, mtk accidentally cganged
the description of the return value range to -pi/2..pi/2;
the corect range is -pi..pi.
Nicolas François [Mon, 29 Sep 2008 10:42:09 +0000 (12:42 +0200)]
utimensat.2: Make various wordings a little more precise.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
The times argument point to *an array of* structures, and the
man-page should say that consistently.
(The '&' before sop in the semop() call is unneeded.) Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Maxin John [Wed, 24 Sep 2008 14:47:07 +0000 (20:17 +0530)]
mlock.2: add EAGAIN error.
Summary from mtk: recent work on mlock caused Maxin to notice that
the EAGAIN error was not documented. KOSAKI Motohiro noted
that this behavior is longstanding.
=====
Dear Michael,
As per the mlock(2) implementation bugfix which is present in
Linux 2.6.27-rc2 git commit,
(http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=a477097d9c37c1cf289c7f0257dffcfa42d50197),
the mlock(2) man page should be modified to reflect the latest changes
in the kernel.
See the LKML thread regarding this commit :
http://www.nabble.com/mlock()-return-value-issue-in-kernel-2.6.23.17-td18751601.html
This patch modifies the mlock(2) behaviour as per the SUSv3 specification.
[ENOMEM]
Some or all of the address range specified by the addr and
len arguments does not correspond to valid mapped pages
in the address space of the process.
[EAGAIN]
Some or all of the memory identified by the operation could not
be locked when the call was made.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com> Signed-off-by: Maxin B. John <maxin.john@ap.sony.com>
=====
From: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
To: "Maxin John" <maxin.john@gmail.com>
Subject: Re: mlock(2) man page modifications Cc: kosaki.motohiro@jp.fujitsu.com,
"Michael Kerrisk" <mtk.manpages@googlemail.com>, man@vger.kernel.org
Date: Thu, 25 Sep 2008 15:04:49 +0900 (JST)
Hi Maxin,
Thank you for your attention.
I think your point and your patch are right.
However, my patch is trivial regression fix, not behavior change.
An older kernel can return EAGAIN at memory stavation.
my patch has following hunk.