sections or shifting paragraphs between sections.
-==================== Changes in man-pages-2.52 ====================
+==================== Changes in man-pages-2.53 ====================
-Released: 2007-05-29
+Released: 2007-??-??
"A foolish consistency is the hobgoblin of little minds, adored by
little statesmen and philosophers and divines"
"But damn it, these man pages are a mess!"
-Contributors
-------------
-
-The following people contributed notes, ideas, or patches that have
-been incorporated in changes in this release:
-
-
-Apologies if I missed anyone!
-
-
Global changes
--------------
-Most of the changes below are about bringing greater consistency
-to manual pages, including reducing the side wange of .SH
-Section headings.
-
-Typographical or grammatical errors have been corrected in several
-places.
-
-Various pages
- mtk
- Make 'manual' component of .TH line "Linux Programmer's Manual"
- Reason: consistency.
-
-Various pages
- mtk
- Changed date in .TH line into form YYYY-DD-MM.
- Reason: consistency.
-
-Various pages
- mtk
- Some .SH header lines were made into .SS lines. (One of the aims
- here is to reduce the number of non-standard .SH lines.)
-
-Various pages
- mtk
- Change title .SH sections named "NOTE" to "NOTES", in some cases
- also changing the location of the section within the page.
- Reason: consistency.
-
-Various pages
- mtk
- Commented out .SH AUTHOR sections; the right place for
- documentation authoriship sections is usually comments at the
- top of the page source.
-
-Various pages
- mtk
- Changed .SH HISTORY to .SH VERSIONS.
- Reason: in many cases, HISTORY was being used to describe
- Linux/glibc version innformation, as was already done for
- VERSIONS sections in other pages.
-
-Various pages
- mtk
- Removed HISTORY section, or moved it as a subsection or paragraphs
- under another section e.g., NOTES.
- Reason: there are too many arbitrary section (.SH) names, and
- a HISTORY section never was consistently used across Linux
- manual pages.
-
-Various pages
- mtk
- Moved SEE ALSO section to be last section on the page
- Reason: consistency -- and this where SEE ALSO should be!
-
-Various pages
- mtk
- Relocated GLIBC NOTES as subsection under NOTES
- Reason: reduce number of arbitrary section (.SH) names.
-
-Various pages
- mtk
- Relocated LINUX NOTES as subsection under NOTES
- Reason: reduce number of arbitrary section (.SH) names.
-
-Various pages
- mtk
- Renamed some "AVAILABILIY" sections to "VERSIONS".
- Reason: consistency.
-
-Various pages
- mtk
- Renamed some "DIAGNOSTICS" sections to "RETURN VALUE".
- Reason: consistency.
-
-getopt.3
-tzselect.8
- mtk
- s/\.SH ENVIRONMENT VARIABLES/.SH ENVIRONMENT/
- Reason: consistency.
-
-intro.2
-select.2
-sysctl.2
-bsearch.3
-dlopen.3
-envz_add.3
-fmtmsg.3
-getgrent_r.3
-getgrouplist.3
-getpwent_r.3
-getutent.3
-hsearch.3
-rtime.3
-strptime.3
-tsearch.3
-vcs.4
-wordexp.3
- mtk
- s/return 0/exit(EXIT_FAILURE)/ in main() of function example
- program.
- Reason: consistency.
-
-mprotect.2
-select_tut.2
-dlopen.3
-getgrent_r.3
-getopt.3
-getpwent_r.3
-hsearch.3
-select_tut.2
-tsearch.3
- mtk
- Use symbolic constants (EXIT_SUCCESS, EXIT_FAILURE) in calls
- to exit().
- Reason: consistency.
-
-access.2
-chown.2
-lseek.2
-open.2
-read.2
-utmp.5
- mtk
- Renamed RESTRICTIONS section to NOTES, or moved text in a
- RESTRICTIONS section under existing NOTES section.
- Reason: consistency, and reduce number of arbitrary section (.SH)
- names.
-
Changes to individual pages
---------------------------
-capget.2
- mtk
- s/\.SH FURTHER INFORMATION/.SH NOTES/
-
-dup.2
- mtk
- s/\.SH WARNING/.SH NOTES/
-
-kill.2
- Renamed LINUX HISTORY section to LINUX NOTES, and relocated
- within page.
-
-select_tut.2
- mtk
- Relocated example program and made its .SH title "EXAMPLE".
-
-sigaltstack.2
- mtk
- Move code example into its own EXAMPLE secton.
-
-sigreturn.2
- mtk
- s/\.SH WARNING/.SH NOTES/
-
-setuid.2
- mtk
- s/\.SH "LINUX-SPECIFIC REMARKS"/.SH LINUX NOTES/
-
-shmget.2
- mtk
- Remove section about effect of fork()/exec()/exit(); shmop.2
- contains the same text, and it only needs to be said once.
-
-shmop.2
- mtk
- Minor rewording under DESCRIPTION.
-
-daemon.3
- mtk
- Minor wording and formatting changes.
-
-encrypt.3
- mtk
- Removed statement that glibc unconditionally exposes declarations
- of encrypt() and setkey(), since portable applications must
- use <unistd.h> and define _XOPEN_SOURCE to obtain the declarations
- of setkey() and encrypt(). Adjusted example program accordingly.
-
-mkstemp.3
- mtk
- Slight rewording.
-
-LDP.7
- mtk
- Minor wording and formatting changes.
-
-man.7
- mtk
- Substantial rewrite, revising and extending the discussion
- about desired conventions for writing pages.
- There will be further updates to this page in the next few
- man-pages releases.
stdarg.3
mtk
Add "va_start", "va_arg", "va_end", "va_copy" to .SH NAME line.
+
+
+==================== Changes in man-pages-2.52 ====================
+
+Released: 2007-05-29
+
+ "A foolish consistency is the hobgoblin of little minds, adored by
+ little statesmen and philosophers and divines"
+
+ Ralph Waldo Emerson (1803-1882)
+
+ "But damn it, these man pages are a mess!"
+
+
+Global changes
+--------------
+
+Most of the changes below are about bringing greater consistency
+to manual pages, including reducing the side wange of .SH
+Section headings.
+
+Typographical or grammatical errors have been corrected in several
+places.
+
+Various pages
+ mtk
+ Make 'manual' component of .TH line "Linux Programmer's Manual"
+ Reason: consistency.
+
+Various pages
+ mtk
+ Changed date in .TH line into form YYYY-DD-MM.
+ Reason: consistency.
+
+Various pages
+ mtk
+ Some .SH header lines were made into .SS lines. (One of the aims
+ here is to reduce the number of non-standard .SH lines.)
+
+Various pages
+ mtk
+ Change title .SH sections named "NOTE" to "NOTES", in some cases
+ also changing the location of the section within the page.
+ Reason: consistency.
+
+Various pages
+ mtk
+ Commented out .SH AUTHOR sections; the right place for
+ documentation authoriship sections is usually comments at the
+ top of the page source.
+
+Various pages
+ mtk
+ Changed .SH HISTORY to .SH VERSIONS.
+ Reason: in many cases, HISTORY was being used to describe
+ Linux/glibc version innformation, as was already done for
+ VERSIONS sections in other pages.
+
+Various pages
+ mtk
+ Removed HISTORY section, or moved it as a subsection or paragraphs
+ under another section e.g., NOTES.
+ Reason: there are too many arbitrary section (.SH) names, and
+ a HISTORY section never was consistently used across Linux
+ manual pages.
+
+Various pages
+ mtk
+ Moved SEE ALSO section to be last section on the page
+ Reason: consistency -- and this where SEE ALSO should be!
+
+Various pages
+ mtk
+ Relocated GLIBC NOTES as subsection under NOTES
+ Reason: reduce number of arbitrary section (.SH) names.
+
+Various pages
+ mtk
+ Relocated LINUX NOTES as subsection under NOTES
+ Reason: reduce number of arbitrary section (.SH) names.
+
+Various pages
+ mtk
+ Renamed some "AVAILABILIY" sections to "VERSIONS".
+ Reason: consistency.
+
+Various pages
+ mtk
+ Renamed some "DIAGNOSTICS" sections to "RETURN VALUE".
+ Reason: consistency.
+
+getopt.3
+tzselect.8
+ mtk
+ s/\.SH ENVIRONMENT VARIABLES/.SH ENVIRONMENT/
+ Reason: consistency.
+
+intro.2
+select.2
+sysctl.2
+bsearch.3
+dlopen.3
+envz_add.3
+fmtmsg.3
+getgrent_r.3
+getgrouplist.3
+getpwent_r.3
+getutent.3
+hsearch.3
+rtime.3
+strptime.3
+tsearch.3
+vcs.4
+wordexp.3
+ mtk
+ s/return 0/exit(EXIT_FAILURE)/ in main() of function example
+ program.
+ Reason: consistency.
+
+mprotect.2
+select_tut.2
+dlopen.3
+getgrent_r.3
+getopt.3
+getpwent_r.3
+hsearch.3
+select_tut.2
+tsearch.3
+ mtk
+ Use symbolic constants (EXIT_SUCCESS, EXIT_FAILURE) in calls
+ to exit().
+ Reason: consistency.
+
+access.2
+chown.2
+lseek.2
+open.2
+read.2
+utmp.5
+ mtk
+ Renamed RESTRICTIONS section to NOTES, or moved text in a
+ RESTRICTIONS section under existing NOTES section.
+ Reason: consistency, and reduce number of arbitrary section (.SH)
+ names.
+
+
+Changes to individual pages
+---------------------------
+
+capget.2
+ mtk
+ s/\.SH FURTHER INFORMATION/.SH NOTES/
+
+dup.2
+ mtk
+ s/\.SH WARNING/.SH NOTES/
+
+kill.2
+ Renamed LINUX HISTORY section to LINUX NOTES, and relocated
+ within page.
+
+select_tut.2
+ mtk
+ Relocated example program and made its .SH title "EXAMPLE".
+
+sigaltstack.2
+ mtk
+ Move code example into its own EXAMPLE secton.
+
+sigreturn.2
+ mtk
+ s/\.SH WARNING/.SH NOTES/
+
+setuid.2
+ mtk
+ s/\.SH "LINUX-SPECIFIC REMARKS"/.SH LINUX NOTES/
+
+shmget.2
+ mtk
+ Remove section about effect of fork()/exec()/exit(); shmop.2
+ contains the same text, and it only needs to be said once.
+
+shmop.2
+ mtk
+ Minor rewording under DESCRIPTION.
+
+daemon.3
+ mtk
+ Minor wording and formatting changes.
+
+encrypt.3
+ mtk
+ Removed statement that glibc unconditionally exposes declarations
+ of encrypt() and setkey(), since portable applications must
+ use <unistd.h> and define _XOPEN_SOURCE to obtain the declarations
+ of setkey() and encrypt(). Adjusted example program accordingly.
+
+mkstemp.3
+ mtk
+ Slight rewording.
+
+LDP.7
+ mtk
+ Minor wording and formatting changes.
+
+man.7
+ mtk
+ Substantial rewrite, revising and extending the discussion
+ about desired conventions for writing pages.
+ There will be further updates to this page in the next few
+ man-pages releases.
RELEASE
The Linux man page maintainer proudly announces. . .
- man-pages-2.52.tar.gz - man pages for Linux
+ man-pages-2.53.tar.gz - man pages for Linux
Differences from the previous manual pages release are listed in
the file "Changes".
Begin3
Title: Section 2, 3, 4, 5 and 7 man pages for Linux
-Version: 2.52
-Entered-date: 2007-05-29
+Version: 2.53
+Entered-date: 2007-??-??
Description: Linux and POSIX manual pages
Keywords: man pages
Author: several
Maintained-by: Michael Kerrisk <mtk-manpages@gmx.net>
Primary-site: ftp://ftp.kernel.org/pub/linux/docs/manpages
- 2599k man-pages-2.52.tar.gz
+ ????k man-pages-2.53.tar.gz
Alternate-site: ftp://ftp.win.tue.nl/pub/linux-local/manpages
Copying-policy: several; for the POSIX pages, see the file POSIX-COPYRIGHT;
the other pages are all freely distributable as long as
Currently only
DECNet
has these semantics on Linux.
-.SH NOTES
-There may not always be a connection waiting after a
-.B SIGIO
-is delivered or
-.BR select (2)
-or
-.BR poll (2)
-return a readability event because the connection might have been
-removed by an asynchronous network error or another thread before
-.BR accept ()
-is called.
-If this happens then the call will block waiting for the next
-connection to arrive.
-To ensure that
-.BR accept ()
-never blocks, the passed socket
-.I sockfd
-needs to have the
-.B O_NONBLOCK
-flag set (see
-.BR socket (7)).
.SH "RETURN VALUE"
On success,
.BR accept ()
the socket returned from
.BR accept ().
.SH NOTES
+There may not always be a connection waiting after a
+.B SIGIO
+is delivered or
+.BR select (2)
+or
+.BR poll (2)
+return a readability event because the connection might have been
+removed by an asynchronous network error or another thread before
+.BR accept ()
+is called.
+If this happens then the call will block waiting for the next
+connection to arrive.
+To ensure that
+.BR accept ()
+never blocks, the passed socket
+.I sockfd
+needs to have the
+.B O_NONBLOCK
+flag set (see
+.BR socket (7)).
+.SS The socklen_t type
The third argument of
.BR accept ()
was originally declared as an `int *' (and is that under libc4 and libc5
.B ETXTBSY
Write access was requested to an executable which is being
executed.
-.SH "NOTES"
-.SS Linux Notes
-In kernels before 2.6.20,
-.BR access ()
-ignored the effect of the
-.B MS_NOEXEC
-flag if it was used to
-.BR mount (2)
-the underlying file system.
-Since kernel 2.6.20,
-.BR access ()
-honours this flag.
+.SH "CONFORMING TO"
+SVr4, 4.3BSD, POSIX.1-2001.
.SH NOTES
.BR access ()
returns an error if any of the access types in the requested call
.BR open (2)
creates a security hole, because the user might exploit the short time
interval between checking and opening the file to manipulate it.
-.SH "CONFORMING TO"
-SVr4, 4.3BSD, POSIX.1-2001.
+.SS Linux Notes
+In kernels before 2.6.20,
+.BR access ()
+ignored the effect of the
+.B MS_NOEXEC
+flag if it was used to
+.BR mount (2)
+the underlying file system.
+Since kernel 2.6.20,
+.BR access ()
+honours this flag.
.SH "SEE ALSO"
.BR chmod (2),
.BR chown (2),
returns the number of seconds remaining until any previously scheduled
alarm was due to be delivered, or zero if there was no previously
scheduled alarm.
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001, 4.3BSD
.SH NOTES
.BR alarm ()
and
Scheduling delays can, as ever, cause the execution of the process to
be delayed by an arbitrary amount of time.
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001, 4.3BSD
.SH "SEE ALSO"
.BR gettimeofday (2),
.BR pause (2),
pointed to by the
.I address
parameter.
+.SH ERRORS
+.TP
+.B EFAULT
+.I addr
+points to an unmapped address or is outside the process address space.
+.TP
+.B EINVAL
+.I code
+is not a valid subcommand.
+.TP
+.B EPERM
+.I addr
+is outside the process address space.
+.\" .SH AUTHOR
+.\" Man page written by Andi Kleen.
+.SH "CONFORMING TO"
+.BR arch_prctl ()
+is a Linux/x86-64 extension and should not be used in programs intended
+to be portable.
.SH NOTES
.BR arch_prctl ()
is only supported on Linux/x86-64 for 64bit programs currently.
.I FS
may be already used by the threading library.
-.SH ERRORS
-.TP
-.B EFAULT
-.I addr
-points to an unmapped address or is outside the process address space.
-.TP
-.B EINVAL
-.I code
-is not a valid subcommand.
-.TP
-.B EPERM
-.I addr
-is outside the process address space.
-.\" .SH AUTHOR
-.\" Man page written by Andi Kleen.
-.SH "CONFORMING TO"
-.BR arch_prctl ()
-is a Linux/x86-64 extension and should not be used in programs intended
-to be portable.
.SH "SEE ALSO"
.BR mmap (2),
.BR modify_ldt (2),
.TP
.B EROFS
The socket inode would reside on a read-only file system.
-.SH BUGS
-The transparent proxy options are not described.
.SH "CONFORMING TO"
SVr4, 4.4BSD, POSIX.1-2001 (the
.BR bind ()
also used by glibc.
See also
.BR accept (2).
+.SH BUGS
+The transparent proxy options are not described.
.SH "SEE ALSO"
.BR accept (2),
.BR connect (2),
.TP
.B EINVAL
cache parameter is not one of ICACHE, DCACHE, or BCACHE.
+.SH NOTES
+This system call is only available on MIPS based systems.
+It should not be used in programs intended to be portable.
.SH BUGS
The current implementation ignores the
.I addr
.I nbytes
arguments.
Therefore, the whole cache is always flushed.
-.SH NOTES
-This system call is only available on MIPS based systems.
-It should not be used in programs intended to be portable.
.B EBADF
.I fd
is not a valid file descriptor.
+.SH "CONFORMING TO"
+SVr4, 4.4BSD, POSIX.1-2001.
.SH NOTES
A child process created via
.BR fork (2)
is defined, or
.B _XOPEN_SOURCE
is defined with the value 500.
-.SH "CONFORMING TO"
-SVr4, 4.4BSD, POSIX.1-2001.
.SH "SEE ALSO"
.BR chroot (2),
.BR path_resolution (2),
.TP
.B EROFS
See above.
+.SH "CONFORMING TO"
+4.4BSD, SVr4, POSIX.1-2001.
+
+The 4.4BSD version can only be
+used by the superuser (that is, ordinary users cannot give away files).
+.\" chown():
+.\" SVr4 documents EINVAL, EINTR, ENOLINK and EMULTIHOP returns, but no
+.\" ENOMEM. POSIX.1 does not document ENOMEM or ELOOP error conditions.
+.\" fchown():
+.\" SVr4 documents additional EINVAL, EIO, EINTR, and ENOLINK
+.\" error conditions.
.SH NOTES
The
.BR chown ()
is only available if
.B _BSD_SOURCE
is defined.
-.SH "CONFORMING TO"
-4.4BSD, SVr4, POSIX.1-2001.
-
-The 4.4BSD version can only be
-used by the superuser (that is, ordinary users cannot give away files).
-.\" chown():
-.\" SVr4 documents EINVAL, EINTR, ENOLINK and EMULTIHOP returns, but no
-.\" ENOMEM. POSIX.1 does not document ENOMEM or ELOOP error conditions.
-.\" fchown():
-.\" SVr4 documents additional EINVAL, EIO, EINTR, and ENOLINK
-.\" error conditions.
.SH "SEE ALSO"
.BR chmod (2),
.BR fchownat (2),
glibc2 provides
.BR clone ()
as described in this manual page.
+.SH "CONFORMING TO"
+The
+.BR clone ()
+and
+.B sys_clone
+calls are Linux specific and should not be used in programs
+intended to be portable.
.SH NOTES
In the kernel 2.4.x series,
.B CLONE_THREAD
.I stack_size
specifies the size of the stack pointed to by
.IR child_stack_base .
-.SH "CONFORMING TO"
-The
-.BR clone ()
-and
-.B sys_clone
-calls are Linux specific and should not be used in programs
-intended to be portable.
.SH BUGS
Versions of the GNU C library that include the NPTL threading library
contain a wrapper function for
(did not have the
.B CAP_SYS_MODULE
capability).
-.SH "CONFORMING TO"
-.BR create_module ()
-is Linux specific.
.SH VERSIONS
This system call is only present on Linux up until kernel 2.4;
it was removed in Linux 2.6.
.\" Removed in Linux-2.5.48
+.SH "CONFORMING TO"
+.BR create_module ()
+is Linux specific.
.SH "SEE ALSO"
.BR init_module (2),
.BR delete_module (2),
.B EMFILE
The process already has the maximum number of file
descriptors open and tried to open a new one.
+.SH "CONFORMING TO"
+SVr4, 4.3BSD, POSIX.1-2001.
+.\" SVr4 documents additional
+.\" EINTR and ENOLINK error conditions. POSIX.1 adds EINTR.
+.\" The EBUSY return is Linux specific.
.SH NOTES
The error returned by
.BR dup2 ()
without closing
.I newfd
first.
-.SH "CONFORMING TO"
-SVr4, 4.3BSD, POSIX.1-2001.
-.\" SVr4 documents additional
-.\" EINTR and ENOLINK error conditions. POSIX.1 adds EINTR.
-.\" The EBUSY return is Linux specific.
.SH "SEE ALSO"
.BR close (2),
.BR fcntl (2),
sigprocmask(SIG_SETMASK, &origmask, NULL);
.fi
-.SH VERSIONS
-.BR epoll_pwait ()
-was added to Linux in kernel 2.6.19.
-.SH NOTES
-.SS Glibc Notes
-Support for
-.BR epoll_pwait ()
-is provided starting with glibc 2.6.
.SH "RETURN VALUE"
When successful,
.BR epoll_wait (2)
file descriptor, or
.I maxevents
is less than or equal to zero.
+.SH VERSIONS
+.BR epoll_pwait ()
+was added to Linux in kernel 2.6.19.
+
+Glibc support for
+.BR epoll_pwait ()
+is provided starting with version 2.6.
.SH CONFORMING TO
.BR epoll_wait (2)
is Linux specific, and was introduced in kernel 2.5.44.
is relative and
.I dirfd
is a file descriptor referring to a file other than a directory.
+.SH VERSIONS
+.BR faccessat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
.SH NOTES
See
.BR openat (2)
If either of these flags are specified, then the wrapper function employs
.BR fstatat (2)
to determine access permissions.
-.SH VERSIONS
-.BR faccessat ()
-was added to Linux in kernel 2.6.16.
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
.SH "SEE ALSO"
.BR access (2),
.BR openat (2),
specified
.BR AT_SYMLINK_NOFOLLOW ,
which is not supported.
+.SH VERSIONS
+.BR fchmodat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
.SH NOTES
See
.BR openat (2)
for an explanation of the need for
.BR fchmodat ().
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
-.SH VERSIONS
-.BR fchmodat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR chmod (2),
.BR openat (2),
is relative and
.I dirfd
is a file descriptor referring to a file other than a directory.
+.SH VERSIONS
+.BR fchownat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
+A similar system call exists on Solaris.
.SH NOTES
See
.BR openat (2)
for an explanation of the need for
.BR fchownat ().
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
-A similar system call exists on Solaris.
-.SH VERSIONS
-.BR fchownat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR chown (2),
.BR openat (2),
Attempted to clear the
.B O_APPEND
flag on a file that has the append-only attribute set.
+.SH "CONFORMING TO"
+SVr4, 4.3BSD, POSIX.1-2001.
+Only the operations F_DUPFD,
+F_GETFD, F_SETFD, F_GETFL, F_SETFL, F_GETLK, F_SETLK, F_SETLKW,
+F_GETOWN, and F_SETOWN are specified in POSIX.1-2001.
+
+F_GETSIG, F_SETSIG, F_NOTIFY, F_GETLEASE, and F_SETLEASE
+are Linux specific.
+(Define the _GNU_SOURCE macro to obtain these definitions.)
+.\" .PP
+.\" SVr4 documents additional EIO, ENOLINK and EOVERFLOW error conditions.
.SH NOTES
The errors returned by
.BR dup2 (2)
has permission to send signals to.
Despite this error return, the file descriptor owner is set,
and signals will be sent to the owner.
-.SH "CONFORMING TO"
-SVr4, 4.3BSD, POSIX.1-2001.
-Only the operations F_DUPFD,
-F_GETFD, F_SETFD, F_GETFL, F_SETFL, F_GETLK, F_SETLK, F_SETLKW,
-F_GETOWN, and F_SETOWN are specified in POSIX.1-2001.
-
-F_GETSIG, F_SETSIG, F_NOTIFY, F_GETLEASE, and F_SETLEASE
-are Linux specific.
-(Define the _GNU_SOURCE macro to obtain these definitions.)
-.\" .PP
-.\" SVr4 documents additional EIO, ENOLINK and EOVERFLOW error conditions.
.SH "SEE ALSO"
.BR dup2 (2),
.BR flock (2),
.BR EROFS ", " EINVAL
.I fd
is bound to a special file which does not support synchronization.
-.SH BUGS
-Currently (Linux 2.2)
-.BR fdatasync ()
-is equivalent to
-.BR fsync (2).
.SH AVAILABILITY
On POSIX systems on which
.BR fdatasync ()
.\" glibc defines them to 1.
.SH "CONFORMING TO"
POSIX.1-2001.
+.SH BUGS
+.\" FIXME The following is no longer true
+Currently (Linux 2.2)
+.BR fdatasync ()
+is equivalent to
+.BR fsync (2).
.SH "SEE ALSO"
.BR fsync (2),
.BR sync_file_range (2)
is relative and
.I dirfd
is a file descriptor referring to a file other than a directory.
+.SH VERSIONS
+.BR fstatat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
+A similar system call exists on Solaris.
.SH NOTES
See
.BR openat (2)
for an explanation of the need for
.BR fstatat ().
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
-A similar system call exists on Solaris.
-.SH VERSIONS
-.BR fstatat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR openat (2),
.BR path_resolution (2),
.BR EROFS ", " EINVAL
.I fd
is bound to a special file which does not support synchronization.
+.SH "CONFORMING TO"
+4.3BSD, POSIX.1-2001
.SH NOTES
If the underlying hard disk has write caching enabled, then
the data may not really be on permanent storage when
.I O_SYNC
flag to
.BR open (2).
-.SH "CONFORMING TO"
-4.3BSD, POSIX.1-2001
.SH "SEE ALSO"
.BR bdflush (2),
.BR open (2),
.TP
.B ENFILE
The system limit on the total number of open files has been reached.
+.SH "VERSIONS"
+.PP
+Initial futex support was merged in Linux 2.5.7 but with different semantics
+from what was described above.
+A 4-parameter system call with the semantics
+given here was introduced in Linux 2.5.40.
+In Linux 2.5.70 one parameter
+was added.
+In Linux 2.6.7 a sixth parameter was added \(em messy, especially
+on the s390 architecture.
+.SH "CONFORMING TO"
+This system call is Linux specific.
.SH "NOTES"
.PP
To reiterate, bare futexes are not intended as an easy to use abstraction
.\" Matthew Kirkwood, Ingo Molnar (Red Hat)
.\" and Rusty Russell (IBM Linux Technology Center).
.\" This page written by bert hubert.
-.SH "VERSIONS"
-.PP
-Initial futex support was merged in Linux 2.5.7 but with different semantics
-from what was described above.
-A 4-parameter system call with the semantics
-given here was introduced in Linux 2.5.40.
-In Linux 2.5.70 one parameter
-was added.
-In Linux 2.6.7 a sixth parameter was added \(em messy, especially
-on the s390 architecture.
-.SH "CONFORMING TO"
-This system call is Linux specific.
.SH "SEE ALSO"
.PP
.BR futex (7),
is relative and
.I dirfd
is a file descriptor referring to a file other than a directory.
+.SH VERSIONS
+.BR futimesat ()
+was added to Linux in kernel 2.6.16.
.SH "CONFORMING TO"
This system call is non-standard but is proposed
for inclusion in a future revision of POSIX.1.
wrapper function updates the times for the file referred to by
.IR dirfd .
.\" The Solaris futimesat() also has this strangeness.
-.SH VERSIONS
-.BR futimesat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR path_resolution (2),
.BR stat (2),
Returns the number of symbols copied to
.IR table .
There is no possible error return.
+.SH VERSIONS
+This system call is only present on Linux up until kernel 2.4;
+it was removed in Linux 2.6.
+.\" Removed in Linux-2.5.48
.SH "CONFORMING TO"
.BR get_kernel_syms ()
is Linux specific.
.BR query_module (2)
(which is itself nowadays deprecated
in favor of other interfaces described on its manual page).
-.SH VERSIONS
-This system call is only present on Linux up until kernel 2.4;
-it was removed in Linux 2.6.
-.\" Removed in Linux-2.5.48
.SH "SEE ALSO"
.BR create_module (2),
.BR delete_module (2),
.\" .I addr
.\" is NULL.
.\" (And there are other EINVAL cases.)
+.SH CONFORMING TO
+This system call is Linux specific.
.SH NOTES
This manual page is incomplete:
it does not document the details the
.SS "Versions and Library Support"
See
.BR mbind (2).
-.SH CONFORMING TO
-This system call is Linux specific.
.SH SEE ALSO
.BR mbind (2),
.BR set_mempolicy (2),
.TP
.B EINVAL
\fIu_info->\fR\fIentry_number\fR is out of bounds.
-.SH "CONFORMING TO"
-.BR get_thread_area ()
-is Linux specific and should not be used in programs
-that are intended to be portable.
.SH VERSIONS
A version of
.BR get_thread_area ()
first appeared in Linux 2.5.32.
+.SH "CONFORMING TO"
+.BR get_thread_area ()
+is Linux specific and should not be used in programs
+that are intended to be portable.
.SH "SEE ALSO"
.BR modify_ldt (2),
.BR set_thread_area (2)
appropriately.
.SH ERRORS
None defined.
+.SH "CONFORMING TO"
+SUSv2, POSIX.1-2001.
.SH NOTES
The earliest incarnation of this mechanism was the
.BR setjmp (3)/ longjmp (3)
or
.BR setcontext ()
instead.
-.SH "CONFORMING TO"
-SUSv2, POSIX.1-2001.
.SH "SEE ALSO"
.BR sigaction (2),
.BR sigaltstack (2),
one more than the largest possible value for a file descriptor.
.SH "RETURN VALUE"
The current limit on the number of open files per process.
+.SH "CONFORMING TO"
+SVr4, 4.4BSD (the
+.BR getdtablesize ()
+function first appeared in 4.2BSD).
+It is not specified in POSIX.1-2001;
+portable applications should employ
+.I sysconf(_SC_OPEN_MAX)
+instead of this call.
.SH NOTES
.BR getdtablesize ()
is implemented as a libc library function.
The libc4 and libc5 versions return
.B OPEN_MAX
(set to 256 since Linux 0.98.4).
-.SH "CONFORMING TO"
-SVr4, 4.4BSD (the
-.BR getdtablesize ()
-function first appeared in 4.2BSD).
-It is not specified in POSIX.1-2001;
-portable applications should employ
-.I sysconf(_SC_OPEN_MAX)
-instead of this call.
.SH "SEE ALSO"
.BR close (2),
.BR dup (2),
.B EPERM
The calling process has insufficient privilege to call
.BR setgroups ().
+.SH "CONFORMING TO"
+SVr4, 4.3BSD.
+The
+.BR getgroups ()
+function is in POSIX.1-2001.
+Since
+.BR setgroups ()
+requires privilege, it is not covered by POSIX.1-2001.
.SH NOTES
A process can have up to at least NGROUPS_MAX supplementary group IDs
in addition to the effective group ID.
is only available if
.B _BSD_SOURCE
is defined.
-.SH "CONFORMING TO"
-SVr4, 4.3BSD.
-The
-.BR getgroups ()
-function is in POSIX.1-2001.
-Since
-.BR setgroups ()
-requires privilege, it is not covered by POSIX.1-2001.
.SH "SEE ALSO"
.BR getgid (2),
.BR setgid (2),
.BR ITIMER_VIRTUAL ,
or
.BR ITIMER_PROF .
+.SH "CONFORMING TO"
+POSIX.1-2001, SVr4, 4.4BSD (this call first appeared in 4.2BSD).
.SH NOTES
A child created via
.BR fork (2)
does not inherit its parent's interval timers.
Interval timers are preserved across an
.BR execve (2).
-.SH "CONFORMING TO"
-POSIX.1-2001, SVr4, 4.4BSD (this call first appeared in 4.2BSD).
.SH BUGS
The generation and delivery of a signal are distinct, and
only one instance of each of the signals listed above may be pending
soft resource limit of the target process; see
.BR getrlimit (2)
for details.
+.SH "CONFORMING TO"
+SVr4, 4.4BSD (these function calls first appeared in 4.2BSD),
+POSIX.1-2001.
.SH NOTES
A child created by
.BR fork (2)
.I struct timeval
defined in
.IR <sys/time.h> .)
-.SH "CONFORMING TO"
-SVr4, 4.4BSD (these function calls first appeared in 4.2BSD),
-POSIX.1-2001.
.SH "SEE ALSO"
.BR nice (1),
.BR fork (2),
to increase
the soft or hard RLIMIT_NOFILE limit above the current kernel
maximum (NR_OPEN).
+.SH CONFORMING TO
+SVr4, 4.3BSD, POSIX.1-2001.
+.BR RLIMIT_MEMLOCK
+and
+.BR RLIMIT_NPROC
+derive from BSD and are not specified in POSIX.1-2001;
+they are present on the BSDs and Linux, but on few other implementations.
+.BR RLIMIT_RSS
+derives from BSD and is not specified in POSIX.1-2001;
+it is nevertheless present on most implementations.
+.BR RLIMIT_MSGQUEUE ,
+.BR RLIMIT_NICE ,
+.BR RLIMIT_RTPRIO ,
+and
+.B RLIMIT_SIGPENDING
+are Linux specific.
+.SH NOTES
+A child process created via
+.BR fork (2)
+inherits its parents resource limits.
+Resource limits are preserved across
+.BR execve (2).
.SH BUGS
In older Linux kernels, the
.B SIGXCPU
.IR rlim->rlim_cur
was greater than
.IR rlim->rlim_max .
-.SH NOTES
-A child process created via
-.BR fork (2)
-inherits its parents resource limits.
-Resource limits are preserved across
-.BR execve (2).
-.SH "CONFORMING TO"
-SVr4, 4.3BSD, POSIX.1-2001.
-.BR RLIMIT_MEMLOCK
-and
-.BR RLIMIT_NPROC
-derive from BSD and are not specified in POSIX.1-2001;
-they are present on the BSDs and Linux, but on few other implementations.
-.BR RLIMIT_RSS
-derives from BSD and is not specified in POSIX.1-2001;
-it is nevertheless present on most implementations.
-.BR RLIMIT_MSGQUEUE ,
-.BR RLIMIT_NICE ,
-.BR RLIMIT_RTPRIO ,
-and
-.B RLIMIT_SIGPENDING
-are Linux specific.
.SH "SEE ALSO"
.BR dup (2),
.BR fcntl (2),
under Linux the
.B CAP_SYS_TIME
capability is required.
+.SH "CONFORMING TO"
+SVr4, 4.3BSD.
+POSIX.1-2001 describes
+.BR gettimeofday ()
+but not
+.BR settimeofday ().
.SH NOTES
The prototype for
.BR settimeofday ()
Traditionally, the fields of
.I struct timeval
were longs.
-.SH "CONFORMING TO"
-SVr4, 4.3BSD.
-POSIX.1-2001 describes
-.BR gettimeofday ()
-but not
-.BR settimeofday ().
.SH "SEE ALSO"
.BR date (1),
.BR adjtimex (2),
Swap: total 27881472 / free 24698880
Number of processes = 40
.fi
+.SH "CONFORMING TO"
+Certain codes are used to indicate Unix variants and standards to
+which calls in the section conform.
+See
+.BR standards (7).
.SH NOTES
The _syscall() macros DO NOT produce a prototype.
You may have to
On these architectures,
.BR syscall (2)
must be used.
-.SH "CONFORMING TO"
-Certain codes are used to indicate Unix variants and standards to
-which calls in the section conform.
-See
-.BR standards (7).
.SH FILES
.I /usr/include/linux/unistd.h
.SH "SEE ALSO"
.B ENOSYS
.BR io_destroy ()
is not implemented on this architecture.
+.SH "VERSIONS"
+.PP
+The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
.SH "CONFORMING TO"
.PP
.BR io_destroy ()
is Linux specific and should not be used in programs
that are intended to be portable.
-.SH "VERSIONS"
-.PP
-The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
.SH "SEE ALSO"
.PP
.BR io_setup (2),
.B ENOSYS
.BR io_getevents ()
is not implemented on this architecture.
+.SH "VERSIONS"
+.PP
+The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
.SH "CONFORMING TO"
.PP
.BR io_getevents ()
is Linux specific and should not be used in
programs that are intended to be portable.
-.SH "VERSIONS"
-.PP
-The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
.SH "SEE ALSO"
.PP
.BR io_setup (2),
.B ENOSYS
.BR io_setup ()
is not implemented on this architecture.
+.SH "VERSIONS"
+.PP
+The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
.SH "CONFORMING TO"
.PP
.BR io_setup ()
is Linux specific and should not be used in programs
that are intended to be portable.
-.SH "VERSIONS"
-.PP
-The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
.SH "SEE ALSO"
.PP
.BR io_destroy (2),
.B ENOSYS
.BR io_submit ()
is not implemented on this architecture.
+.SH "VERSIONS"
+.PP
+The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
.SH "CONFORMING TO"
.PP
.BR io_submit ()
is Linux specific and should not be used in
programs that are intended to be portable.
-.SH "VERSIONS"
-.PP
-The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
.SH "SEE ALSO"
.PP
.BR io_setup (2),
descriptor
.I d
references.
-.SH NOTES
-In order to use this call, one needs an open file descriptor.
-Often the
-.BR open (2)
-call has unwanted side effects, that can be avoided under Linux
-by giving it the O_NONBLOCK flag.
-.SH "CONFORMING TO"
+.SH CONFORMING TO
No single standard.
Arguments, returns, and semantics of
.BR ioctl (2)
The
.BR ioctl ()
function call appeared in Version 7 AT&T Unix.
+.SH NOTES
+In order to use this call, one needs an open file descriptor.
+Often the
+.BR open (2)
+call has unwanted side effects, that can be avoided under Linux
+by giving it the O_NONBLOCK flag.
.SH "SEE ALSO"
.BR execve (2),
.BR fcntl (2),
Refer to the NOTES section for available scheduler
classes and priority levels for
.IR ioprio .
+.SH VERSIONS
+These system calls have been available on Linux since
+kernel 2.6.13.
+.SH "CONFORMING TO"
+These system calls are Linux specific.
.SH NOTES
These system calls only have an effect when used
in conjunction with an I/O scheduler that supports I/O priorities.
the function prototypes and macros described on this page.
Suitable definitions can be found in
.IR linux/ioprio.h .
-.SH VERSIONS
-These system calls have been available on Linux since
-kernel 2.6.13.
-.SH "CONFORMING TO"
-These system calls are Linux specific.
.SH "SEE ALSO"
.BR getpriority "(2), " open "(2), " capabilities (7)
.sp
has not yet been
.BR wait (2)ed
for.
+.SH "CONFORMING TO"
+SVr4, 4.3BSD, POSIX.1-2001
.SH NOTES
The only signals that can be sent process ID 1, the
.I init
than \fIall\fP) of the members of the process group.
Notwithstanding this error return, the signal was still delivered
to all of the processes for which the caller had permission to signal.
-.SH "CONFORMING TO"
-SVr4, 4.3BSD, POSIX.1-2001
.SH "SEE ALSO"
.BR _exit (2),
.BR killpg (2),
.B ESRCH
The process group was given as 0 but the sending process does not
have a process group.
+.SH "CONFORMING TO"
+SVr4, 4.4BSD (The
+.BR killpg ()
+function call first appeared in 4BSD), POSIX.1-2001.
.SH NOTES
There are various differences between the permission checking
in BSD-type systems and System V-type systems.
when the permission check failed for at least one target process,
while POSIX documents EPERM only when the permission check failed
for all target processes.
-.SH "CONFORMING TO"
-SVr4, 4.4BSD (The
-.BR killpg ()
-function call first appeared in 4BSD), POSIX.1-2001.
.SH "SEE ALSO"
.BR getpgrp (2),
.BR kill (2),
.BR link (2)
does not work across different mount points,
even if the same filesystem is mounted on both.)
+.SH "CONFORMING TO"
+SVr4, 4.3BSD, POSIX.1-2001 (except as noted above).
+.\" SVr4 documents additional ENOLINK and
+.\" EMULTIHOP error conditions; POSIX.1 does not document ELOOP.
+.\" X/OPEN does not document EFAULT, ENOMEM or EIO.
.SH NOTES
Hard links, as created by
.BR link (),
.\" behaves like Linux, and contributors to a March 2005
.\" thread in the Austin mailing list reported that some
.\" other (System V) implementations did/do the same -- MTK, Apr 05
-.SH "CONFORMING TO"
-SVr4, 4.3BSD, POSIX.1-2001 (except as noted above).
-.\" SVr4 documents additional ENOLINK and
-.\" EMULTIHOP error conditions; POSIX.1 does not document ELOOP.
-.\" X/OPEN does not document EFAULT, ENOMEM or EIO.
.SH BUGS
On NFS file systems, the return code may be wrong in case the NFS server
performs the link creation and dies before it can say so.
.I newpath
and
.IR newdirfd
+.SH VERSIONS
+.BR linkat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
.SH NOTES
See
.BR openat (2)
for an explanation of the need for
.BR linkat ().
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
-.SH VERSIONS
-.BR linkat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR link (2),
.BR openat (2),
.B ECONNREFUSED
or, if the underlying protocol supports retransmission, the request may be
ignored so that retries succeed.
-.SH NOTES
-The behaviour of the
-.I backlog
-parameter on TCP sockets changed with Linux 2.2.
-Now it specifies the queue length for
-.I completely
-established sockets waiting to be accepted, instead of the number of incomplete
-connection requests.
-The maximum length of the queue for incomplete sockets
-can be set using the
-.B tcp_max_syn_backlog
-sysctl.
-When syncookies are enabled there is no logical maximum
-length and this sysctl setting is ignored.
-See
-.BR tcp (7)
-for more information.
.SH "RETURN VALUE"
On success, zero is returned.
On error, \-1 is returned, and
The
.BR listen ()
function call first appeared in 4.2BSD.
+.SH NOTES
+The behaviour of the
+.I backlog
+parameter on TCP sockets changed with Linux 2.2.
+Now it specifies the queue length for
+.I completely
+established sockets waiting to be accepted, instead of the number of incomplete
+connection requests.
+The maximum length of the queue for incomplete sockets
+can be set using the
+.B tcp_max_syn_backlog
+sysctl.
+When syncookies are enabled there is no logical maximum
+length and this sysctl setting is ignored.
+See
+.BR tcp (7)
+for more information.
.SH BUGS
If the socket is of type
.BR AF_INET ,
.BR lookup_dcookie ()
to return successfully,
the kernel must still hold a cookie reference to the directory entry.
-.SH "NOTES"
-.BR lookup_dcookie ()
-is a special-purpose system call, currently used only by the oprofile profiler.
-It relies on a kernel driver to register cookies for directory entries.
-
-The path returned may be suffixed by the string " (deleted)" if the directory
-entry has been removed.
.SH "RETURN VALUE"
On success,
.BR lookup_dcookie ()
.TP
.B ERANGE
The buffer was not large enough to hold the path of the directory entry.
-.SH "CONFORMING TO"
-.BR lookup_dcookie ()
-is Linux specific.
.SH VERSIONS
Available since Linux 2.5.43.
The ENAMETOOLONG error return was added in 2.5.70.
+.SH "CONFORMING TO"
+.BR lookup_dcookie ()
+is Linux specific.
+.SH "NOTES"
+.BR lookup_dcookie ()
+is a special-purpose system call, currently used only by the oprofile profiler.
+It relies on a kernel driver to register cookies for directory entries.
+
+The path returned may be suffixed by the string " (deleted)" if the directory
+entry has been removed.
.B ENOMEM
Addresses in the specified range are not currently
mapped, or are outside the address space of the process.
+.SH "CONFORMING TO"
+POSIX.1b.
+POSIX.1-2001 describes
+.BR posix_madvise (3)
+with constants POSIX_MADV_NORMAL, etc.,
+with a behaviour close to that described here.
+There is a similar
+.BR posix_fadvise (3)
+for file access.
+
+.BR MADV_REMOVE ,
+.BR MADV_DONTFORK ,
+and
+.BR MADV_DOFORK
+are Linux specific.
.SH NOTES
.SS "Linux Notes"
.LP
.\" The
.\" .BR madvise ()
.\" function first appeared in 4.4BSD.
-.SH "CONFORMING TO"
-POSIX.1b.
-POSIX.1-2001 describes
-.BR posix_madvise (3)
-with constants POSIX_MADV_NORMAL, etc.,
-with a behaviour close to that described here.
-There is a similar
-.BR posix_fadvise (3)
-for file access.
-
-.BR MADV_REMOVE ,
-.BR MADV_DONTFORK ,
-and
-.BR MADV_DOFORK
-are Linux specific.
.SH "SEE ALSO"
.BR getrlimit (2),
.BR mincore (2),
.B MPOL_MF_STRICT
was specified and an existing page was already on a node
that does not follow the policy.
+.SH CONFORMING TO
+This system call is Linux specific.
.SH NOTES
NUMA policy is not supported on file mappings.
This package also has the
.I numaif.h
header.
-.SH CONFORMING TO
-This system call is Linux specific.
.SH SEE ALSO
.BR numa (3),
.BR numactl (8),
+
.I length
contained unmapped memory.
+.SH VERSIONS
+Available since Linux 2.3.99pre1 and glibc 2.2.
+.SH "CONFORMING TO"
+.BR mincore ()
+is not specified in POSIX.1-2001,
+and it is not available on all Unix implementations.
+.\" It is on at least NetBSD, FreeBSD, OpenBSD, Solaris 8,
+.\" AIX 5.1, SunOS 4.1
+.\" .SH HISTORY
+.\" The
+.\" .BR mincore ()
+.\" function first appeared in 4.4BSD.
.SH BUGS
Before kernel 2.6.21,
.BR mincore ()
.\" .B mincore
.\" always fails with the error
.\" .BR ENOMEM .
-.SH "CONFORMING TO"
-.BR mincore ()
-is not specified in POSIX.1-2001,
-and it is not available on all Unix implementations.
-.\" It is on at least NetBSD, FreeBSD, OpenBSD, Solaris 8,
-.\" AIX 5.1, SunOS 4.1
-.\" .SH HISTORY
-.\" The
-.\" .BR mincore ()
-.\" function first appeared in 4.4BSD.
-.SH VERSIONS
-Available since Linux 2.3.99pre1 and glibc 2.2.
.SH "SEE ALSO"
.BR mlock (2),
.BR mmap (2)
is relative and
.I dirfd
is a file descriptor referring to a file other than a directory.
+.SH VERSIONS
+.BR mkdirat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
.SH NOTES
See
.BR openat (2)
for an explanation of the need for
.BR mkdirat ().
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
-.SH VERSIONS
-.BR mkdirat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR mkdir (2),
.BR openat (2),
is relative and
.I dirfd
is a file descriptor referring to a file other than a directory.
+.SH VERSIONS
+.BR mknodat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
.SH NOTES
See
.BR openat (2)
for an explanation of the need for
.BR mknodat ().
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
-.SH VERSIONS
-.BR mknodat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR mknod (2),
.BR openat (2),
.BR munlockall ()
unlocks all pages mapped into the address space of the
calling process.
+.SH "RETURN VALUE"
+On success these system calls return 0.
+On error, \-1 is returned,
+.I errno
+is set appropriately, and no changes are made to any locks in the
+address space of the process.
+.SH ERRORS
+.TP
+.B ENOMEM
+(Linux 2.6.9 and later) the caller had a non-zero
+.B RLIMIT_MEMLOCK
+soft resource limit, but tried to lock more memory than the limit
+permitted.
+This limit is not enforced if the process is privileged
+.RB ( CAP_IPC_LOCK ).
+.TP
+.B ENOMEM
+(Linux 2.4 and earlier) the calling process tried to lock more than
+half of RAM.
+.\" In the case of mlock(), this check is somewhat buggy: it doesn't
+.\" take into account whether the to-be-locked range overlaps with
+.\" already locked pages. Thus, suppose we allocate
+.\" (num_physpages / 4 + 1) of memory, and lock those pages once using
+.\" mlock(), and then lock the *same* page range a second time.
+.\" In the case, the second mlock() call will fail, since the check
+.\" calculates that the process is trying to lock (num_physpages / 2 + 2)
+.\" pages, which of course is not true. (MTK, Nov 04, kernel 2.4.28)
+.TP
+.B EPERM
+(Linux 2.6.9 and later) the caller was not privileged
+.RB ( CAP_IPC_LOCK )
+and its
+.B RLIMIT_MEMLOCK
+soft resource limit was 0.
+.TP
+.B EPERM
+(Linux 2.6.8 and earlier)
+The calling process has insufficient privilege to call
+.BR munlockall ().
+Under Linux the
+.B CAP_IPC_LOCK
+capability is required.
+.\"SVr4 documents an additional EAGAIN error code.
+.LP
+For
+.BR mlock ()
+and
+.BR munlock ():
+.TP
+.B EINVAL
+.I len
+was negative.
+.TP
+.B EINVAL
+(Not on Linux)
+.I addr
+was not a multiple of the page size.
+.TP
+.B ENOMEM
+Some of the specified address range does not correspond to mapped
+pages in the address space of the process.
+.LP
+For
+.BR mlockall ():
+.TP
+.B EINVAL
+Unknown \fIflags\fP were specified.
+.LP
+For
+.BR munlockall ():
+.TP
+.B EPERM
+(Linux 2.6.8 and earlier) The caller was not privileged
+.RB ( CAP_IPC_LOCK ).
+.SH "CONFORMING TO"
+POSIX.1-2001, SVr4
+.SH AVAILABILITY
+On POSIX systems on which
+.BR mlock ()
+and
+.BR munlock ()
+are available,
+.B _POSIX_MEMLOCK_RANGE
+is defined in <unistd.h> and the number of bytes in a page
+can be determined from the constant
+.B PAGESIZE
+(if defined) in <limits.h> or by calling
+.IR sysconf(_SC_PAGESIZE) .
+
+On POSIX systems on which
+.BR mlockall ()
+and
+.BR munlockall ()
+are available,
+.B _POSIX_MEMLOCK
+is defined in <unistd.h> to a value greater than 0. (See also
+.BR sysconf (3).)
+.\" POSIX.1-2001: It shall be defined to -1 or 0 or 200112L.
+.\" -1: unavailable, 0: ask using sysconf().
+.\" glibc defines it to 1.
.SH "NOTES"
Memory locking has two main applications: real-time algorithms and
high-security data processing.
.B RLIMIT_MEMLOCK
soft resource limit instead defines a limit on how much memory an
unprivileged process may lock.
-.SH "RETURN VALUE"
-On success these system calls return 0.
-On error, \-1 is returned,
-.I errno
-is set appropriately, and no changes are made to any locks in the
-address space of the process.
-.SH ERRORS
-.TP
-.B ENOMEM
-(Linux 2.6.9 and later) the caller had a non-zero
-.B RLIMIT_MEMLOCK
-soft resource limit, but tried to lock more memory than the limit
-permitted.
-This limit is not enforced if the process is privileged
-.RB ( CAP_IPC_LOCK ).
-.TP
-.B ENOMEM
-(Linux 2.4 and earlier) the calling process tried to lock more than
-half of RAM.
-.\" In the case of mlock(), this check is somewhat buggy: it doesn't
-.\" take into account whether the to-be-locked range overlaps with
-.\" already locked pages. Thus, suppose we allocate
-.\" (num_physpages / 4 + 1) of memory, and lock those pages once using
-.\" mlock(), and then lock the *same* page range a second time.
-.\" In the case, the second mlock() call will fail, since the check
-.\" calculates that the process is trying to lock (num_physpages / 2 + 2)
-.\" pages, which of course is not true. (MTK, Nov 04, kernel 2.4.28)
-.TP
-.B EPERM
-(Linux 2.6.9 and later) the caller was not privileged
-.RB ( CAP_IPC_LOCK )
-and its
-.B RLIMIT_MEMLOCK
-soft resource limit was 0.
-.TP
-.B EPERM
-(Linux 2.6.8 and earlier)
-The calling process has insufficient privilege to call
-.BR munlockall ().
-Under Linux the
-.B CAP_IPC_LOCK
-capability is required.
-.\"SVr4 documents an additional EAGAIN error code.
-.LP
-For
-.BR mlock ()
-and
-.BR munlock ():
-.TP
-.B EINVAL
-.I len
-was negative.
-.TP
-.B EINVAL
-(Not on Linux)
-.I addr
-was not a multiple of the page size.
-.TP
-.B ENOMEM
-Some of the specified address range does not correspond to mapped
-pages in the address space of the process.
-.LP
-For
-.BR mlockall ():
-.TP
-.B EINVAL
-Unknown \fIflags\fP were specified.
-.LP
-For
-.BR munlockall ():
-.TP
-.B EPERM
-(Linux 2.6.8 and earlier) The caller was not privileged
-.RB ( CAP_IPC_LOCK ).
.SH "BUGS"
In the 2.4 series Linux kernels up to and including 2.4.17,
a bug caused the
.\" http://marc.theaimsgroup.com/?l=linux-kernel&m=113801392825023&w=2
.\" "Rationale for RLIMIT_MEMLOCK"
.\" 23 Jan 2006
-.SH AVAILABILITY
-On POSIX systems on which
-.BR mlock ()
-and
-.BR munlock ()
-are available,
-.B _POSIX_MEMLOCK_RANGE
-is defined in <unistd.h> and the number of bytes in a page
-can be determined from the constant
-.B PAGESIZE
-(if defined) in <limits.h> or by calling
-.IR sysconf(_SC_PAGESIZE) .
-
-On POSIX systems on which
-.BR mlockall ()
-and
-.BR munlockall ()
-are available,
-.B _POSIX_MEMLOCK
-is defined in <unistd.h> to a value greater than 0. (See also
-.BR sysconf (3).)
-.\" POSIX.1-2001: It shall be defined to -1 or 0 or 200112L.
-.\" -1: unavailable, 0: ask using sysconf().
-.\" glibc defines it to 1.
-.SH "CONFORMING TO"
-POSIX.1-2001, SVr4
.SH "SEE ALSO"
.BR mmap (2),
.BR shmctl (2),
.I errno
is set (probably to
.BR EINVAL ).
-.SH NOTES
-It is architecture dependent whether
-.B PROT_READ
-implies
-.B PROT_EXEC
-or not.
-Portable programs should always set
-.B PROT_EXEC
-if they intend to execute code in the new mapping.
.SH ERRORS
.TP
.B EACCES
SVr4, 4.4BSD, POSIX.1-2001.
.\" SVr4 documents additional error codes ENXIO and ENODEV.
.\" SUSv2 documents additional error codes EMFILE and EOVERFLOW.
+.SH NOTES
+It is architecture dependent whether
+.B PROT_READ
+implies
+.B PROT_EXEC
+or not.
+Portable programs should always set
+.B PROT_EXEC
+if they intend to execute code in the new mapping.
.SH BUGS
On Linux there are no guarantees like those suggested above under
.BR MAP_NORESERVE .
.B EFAULT
Problem with getting the
data from userspace.
+.SH "CONFORMING TO"
+This system call is Linux specific.
.SH NOTES
.BR mmap2 ()
is available since Linux 2.3.31.
is used to implement the
.BR mmap64 ()
function that is part of the LFS (Large File Summit).
-.SH "CONFORMING TO"
-This system call is Linux specific.
.SH "SEE ALSO"
.BR getpagesize (2),
.BR mmap (2),
.B MREMAP_MAYMOVE
flag is not set in \fIflags\fP.
Or, there is not enough (virtual) memory available.
+.SH "CONFORMING TO"
+This call is Linux specific, and should not be used in programs
+intended to be portable. 4.2BSD had a (never actually implemented)
+.BR mremap (2)
+call with completely different semantics.
+.\" FIXME perhaps remove above statement about 4.2BSD.
.SH NOTES
Prior to version 2.4, glibc did not expose the definition of
.BR MREMAP_FIXED ,
did not allow for the
.I new_address
argument.
-.SH "CONFORMING TO"
-This call is Linux specific, and should not be used in programs
-intended to be portable. 4.2BSD had a (never actually implemented)
-.BR mremap (2)
-call with completely different semantics.
.SH "SEE ALSO"
.BR brk (2),
.BR getpagesize (2),
and the process is not privileged (Linux: it does not have the
.B CAP_SYS_ADMIN
capability).
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001.
+.\" SVID does not document the EIDRM error condition.
.SH NOTES
The
.BR IPC_INFO ,
a recompilation under glibc-2.1.91 or later should suffice.
(The kernel distinguishes old and new calls by an IPC_64 flag in
.IR cmd .)
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001.
-.\" SVID does not document the EIDRM error condition.
.SH "SEE ALSO"
.BR msgget (2),
.BR msgrcv (2),
number of message queues
.RB ( MSGMNI )
would be exceeded.
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001.
.SH NOTES
.B IPC_PRIVATE
isn't a flag field but a
.SH BUGS
The name choice IPC_PRIVATE was perhaps unfortunate, IPC_NEW
would more clearly show its function.
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001.
.SH "SEE ALSO"
.BR msgctl (2),
.BR msgrcv (2),
field was not in the range 0 to 999999999 or
.I tv_sec
was negative.
+.SH "CONFORMING TO"
+POSIX.1-2001.
.SH BUGS
The current implementation of
.BR nanosleep ()
If the system call is subsequently restarted,
then the time that the process spent in the stopped state is
\fInot\fP counted against the sleep interval.
-.SH "CONFORMING TO"
-POSIX.1-2001.
.SH "SEE ALSO"
.BR sched_setscheduler (2),
.BR timer_create (2),
(in which case,
.I errno
is set appropriately).
-.SH NOTES
-There are many infelicities in the protocol underlying NFS, affecting
-amongst others
-.BR O_SYNC " and " O_NDELAY .
-
-POSIX provides for three different variants of synchronised I/O,
-corresponding to the flags \fBO_SYNC\fR, \fBO_DSYNC\fR and
-\fBO_RSYNC\fR.
-Currently (2.1.130) these are all synonymous under Linux.
-
-Note that
-.BR open ()
-can open device special files, but
-.BR creat ()
-cannot create them; use
-.BR mknod (2)
-instead.
-.LP
-On NFS file systems with UID mapping enabled,
-.BR open ()
-may
-return a file descriptor but e.g.
-.BR read (2)
-requests are denied
-with \fBEACCES\fP.
-This is because the client performs
-.BR open ()
-by checking the
-permissions, but UID mapping is performed by the server upon
-read and write requests.
-
-If the file is newly created, its st_atime, st_ctime, st_mtime fields
-(respectively, time of last access, time of last status change, and
-time of last modification; see
-.BR stat (2))
-are set
-to the current time, and so are the st_ctime and st_mtime fields of the
-parent directory.
-Otherwise, if the file is modified because of the O_TRUNC flag,
-its st_ctime and st_mtime fields are set to the current time.
.SH ERRORS
.TP
.B EACCES
flag was specified, and an incompatible lease was held on the file
(see
.BR fcntl (2)).
-.SH NOTES
-Under Linux, the O_NONBLOCK flag indicates that one wants to open
-but does not necessarily have the intention to read or write.
-This is typically used to open devices in order to get a file descriptor
-for use with
-.BR ioctl (2).
.SH "CONFORMING TO"
SVr4, 4.3BSD, POSIX.1-2001.
The
One may have to define the
.B _GNU_SOURCE
macro to get their definitions.
+.SH NOTES
+Under Linux, the
+.B O_NONBLOCK
+flag indicates that one wants to open
+but does not necessarily have the intention to read or write.
+This is typically used to open devices in order to get a file descriptor
+for use with
+.BR ioctl (2).
.LP
The (undefined) effect of
.B O_RDONLY | O_TRUNC
One may have to define the
.B _GNU_SOURCE
macro to get its definition.
+.PP
+There are many infelicities in the protocol underlying NFS, affecting
+amongst others
+.BR O_SYNC " and " O_NDELAY .
+
+POSIX provides for three different variants of synchronised I/O,
+corresponding to the flags \fBO_SYNC\fR, \fBO_DSYNC\fR and
+\fBO_RSYNC\fR.
+Currently (2.1.130) these are all synonymous under Linux.
+
+Note that
+.BR open ()
+can open device special files, but
+.BR creat ()
+cannot create them; use
+.BR mknod (2)
+instead.
+.LP
+On NFS file systems with UID mapping enabled,
+.BR open ()
+may
+return a file descriptor but e.g.
+.BR read (2)
+requests are denied
+with \fBEACCES\fP.
+This is because the client performs
+.BR open ()
+by checking the
+permissions, but UID mapping is performed by the server upon
+read and write requests.
+
+If the file is newly created, its
+.IR st_atime ,
+.IR st_ctime ,
+.I st_mtime
+fields
+(respectively, time of last access, time of last status change, and
+time of last modification; see
+.BR stat (2))
+are set
+to the current time, and so are the
+.I st_ctime
+and
+.I st_mtime
+fields of the
+parent directory.
+Otherwise, if the file is modified because of the
+.B O_TRUNC
+flag, its st_ctime and st_mtime fields are set to the current time.
.SH BUGS
"The thing that has always disturbed me about O_DIRECT is that the whole
interface is just stupid, and was probably designed by a deranged monkey
is relative and
.I dirfd
is a file descriptor referring to a file other than a directory.
+.SH VERSIONS
+.BR openat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
+A similar system call exists on Solaris.
+.\" The 'at' suffix in Solaris is actually double sensed. It
+.\" primarily referred to "extended *at*tributes", which are
+.\" handled by Solaris' O_XATTR flag, but was also intended
+.\" to refer to the notion of "at a relative location".
+.\"
+.\" See the following for a discussion of the inconsistent
+.\" naming of the *at() functions:
+.\" http://www.opengroup.org/austin/mailarchives/ag/msg09103.html
+.\" Subject: RE: The naming of at()s is a difficult matter
+.\" From: Don Cragun
+.\" Date: Tue, 14 Feb 2006 14:56:50 -0800 (PST)
+.\"
.SH NOTES
.BR openat ()
and other similar system calls suffixed "at" are supported
on the use of
.IR /proc/self/fd/ dirfd,
but less efficiently.)
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
-A similar system call exists on Solaris.
-.\" The 'at' suffix in Solaris is actually double sensed. It
-.\" primarily referred to "extended *at*tributes", which are
-.\" handled by Solaris' O_XATTR flag, but was also intended
-.\" to refer to the notion of "at a relative location".
-.\"
-.\" See the following for a discussion of the inconsistent
-.\" naming of the *at() functions:
-.\" http://www.opengroup.org/austin/mailarchives/ag/msg09103.html
-.\" Subject: RE: The naming of at()s is a difficult matter
-.\" From: Don Cragun
-.\" Date: Tue, 14 Feb 2006 14:56:50 -0800 (PST)
-.\"
-.SH VERSIONS
-.BR openat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR faccessat (2),
.BR fchmodat (2),
.BR pivot_root (),
see also below), not the old root directory, but the
mount point of that file system is mounted on \fIput_old\fP.
-.SH NOTES
+
\fInew_root\fP does not have to be a mount point.
In this case,
\fI/proc/mounts\fP will show the mount point of the file system containing
The current process does not have the
.B CAP_SYS_ADMIN
capability.
+.SH VERSIONS
+.BR pivot_root ()
+was introduced in Linux 2.3.41.
+.SH "CONFORMING TO"
+.BR pivot_root ()
+is Linux specific and hence is not portable.
.SH BUGS
.BR pivot_root ()
should not have to change root and cwd of all other
.BR pivot_root ()
may quickly lead to
insanity.
-.SH "CONFORMING TO"
-.BR pivot_root ()
-is Linux specific and hence is not portable.
-.SH VERSIONS
-.BR pivot_root ()
-was introduced in Linux 2.3.41.
.SH "SEE ALSO"
.BR chdir (2),
.BR chroot (2),
.TP
.B ENOMEM
There was no space to allocate file descriptor tables.
-.SH BUGS
-See the discussion of spurious readiness notifications under the
-BUGS section of
-.BR select (2).
-.SH "CONFORMING TO"
-.BR poll ()
-conforms to POSIX.1-2001.
-.BR ppoll ()
-is Linux specific.
-.\" NetBSD 3.0 has a pollts() which is like Linux ppoll().
.SH VERSIONS
The
.BR poll ()
The
.BR ppoll ()
library call was added in glibc 2.4.
+.SH "CONFORMING TO"
+.BR poll ()
+conforms to POSIX.1-2001.
+.BR ppoll ()
+is Linux specific.
+.\" NetBSD 3.0 has a pollts() which is like Linux ppoll().
.SH NOTES
Some implementations define the non-standard constant
.B INFTIM
function does not modify its
.I timeout
argument.
+.SH BUGS
+See the discussion of spurious readiness notifications under the
+BUGS section of
+.BR select (2).
.SH "SEE ALSO"
.BR select (2),
.BR select_tut (2),
.B ESPIPE
The specified file descriptor refers to a pipe or FIFO. (Linux actually
returns EINVAL in this case.)
-.SH NOTES
+.SH VERSIONS
.BR posix_fadvise ()
appeared in kernel 2.5.60.
.\" Actually as fadvise64() -- MTK
-
+.SH "CONFORMING TO"
+POSIX.1-2001.
+Note that the type of the
+.I len
+parameter was changed from
+.I size_t
+to
+.I off_t
+in POSIX.1-2003 TC1.
+.SH NOTES
+VERSIONS
Under Linux, \fBPOSIX_FADV_NORMAL\fP sets the readahead window to the
default size for the backing device; \fBPOSIX_FADV_SEQUENTIAL\fP doubles
this size, and \fBPOSIX_FADV_RANDOM\fP disables file readahead entirely.
or
.BR fdatasync (2)
first.
-.SH "CONFORMING TO"
-POSIX.1-2001.
-Note that the type of the
-.I len
-parameter was changed from
-.I size_t
-to
-.I off_t
-in POSIX.1-2003 TC1.
.SH BUGS
In kernels before 2.6.6, if
.I len
and
.I arg2
is not zero or a signal number.
+.SH VERSIONS
+The
+.BR prctl ()
+system call was introduced in Linux 2.1.57.
+.\" The library interface was added in glibc 2.0.6
.SH "CONFORMING TO"
This call is Linux specific.
IRIX has a
get the maximum number of processors the calling process can use,
find out whether a specified process is currently blocked,
get or set the maximum stack size, etc.
-.SH VERSIONS
-The
-.BR prctl ()
-system call was introduced in Linux 2.1.57.
-.\" The library interface was added in glibc 2.0.6
.SH "SEE ALSO"
.BR signal (2),
.BR core (5)
.BR write (2)
or
.BR lseek (2).
-.SH "CONFORMING TO"
-POSIX.1-2001.
.SH VERSIONS
The
.BR pread ()
in 2.1.69.
The libc support (including emulation on older kernels
without the system calls) was added in glibc 2.1.
+.SH "CONFORMING TO"
+POSIX.1-2001.
.SH "SEE ALSO"
.BR lseek (2),
.BR read (2),
request may be \-1, the caller must check
.I errno
after such requests to determine whether or not an error occurred.
-.SH BUGS
-On hosts with 2.6 kernel headers, PTRACE_SETOPTIONS is declared
-with a different value than the one for 2.4.
-This leads to applications compiled with such
-headers failing when run on 2.4 kernels.
-This can be worked around by redefining PTRACE_SETOPTIONS to
-PTRACE_OLDSETOPTIONS, if that is defined.
.SH ERRORS
.TP
.B EBUSY
by the caller, or is not stopped (for requests that require that).
.SH "CONFORMING TO"
SVr4, 4.3BSD
+.SH BUGS
+On hosts with 2.6 kernel headers, PTRACE_SETOPTIONS is declared
+with a different value than the one for 2.4.
+This leads to applications compiled with such
+headers failing when run on 2.4 kernels.
+This can be worked around by redefining PTRACE_SETOPTIONS to
+PTRACE_OLDSETOPTIONS, if that is defined.
.SH "SEE ALSO"
.BR gdb (1),
.BR strace (1),
is relative and
.I dirfd
is a file descriptor referring to a file other than a directory.
+.SH VERSIONS
+.BR readlinkat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
.SH NOTES
See
.BR openat (2)
for an explanation of the need for
.BR readlinkat ().
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
-.SH VERSIONS
-.BR readlinkat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR openat (2),
.BR path_resolution (2),
On error, \-1 is returned, and
.I errno
is set appropriately.
-.SH NOTES
-The
-.BR remap_file_pages ()
-system call appeared in Linux 2.5.46.
.SH ERRORS
.TP
.B EINVAL
.I pgoff
is invalid.
.\" And possibly others from vma->vm_ops->populate()
+.SH VERSIONS
+The
+.BR remap_file_pages ()
+system call appeared in Linux 2.5.46.
.SH "CONFORMING TO"
The
.BR remap_file_pages ()
.I newpath
and
.IR newdirfd
+.SH VERSIONS
+.BR renameat ()
+was added to Linux in kernel 2.6.16.
+.SH "CONFORMING TO"
+This system call is non-standard but is proposed
+for inclusion in a future revision of POSIX.1.
.SH NOTES
See
.BR openat (2)
for an explanation of the need for
.BR renameat ().
-.SH "CONFORMING TO"
-This system call is non-standard but is proposed
-for inclusion in a future revision of POSIX.1.
-.SH VERSIONS
-.BR renameat ()
-was added to Linux in kernel 2.6.16.
.SH "SEE ALSO"
.BR openat (2),
.BR rename (2),
.TP
.B ESRCH
The process whose ID is \fIpid\fR could not be found.
+.SH VERSIONS
+The CPU affinity system calls were introduced in Linux kernel 2.5.8.
+The library interfaces were introduced in glibc 2.3.
+Initially, the glibc interfaces included a
+.I cpusetsize
+argument.
+In glibc 2.3.3, the
+.I cpusetsize
+argument was removed, but this argument was restored in glibc 2.3.4.
+.fi
.SH "CONFORMING TO"
These system calls are Linux specific.
.SH "NOTES"
.I cpumask_t
data type that is used internally by the kernel to
represent the CPU set bitmask.
-.SH VERSIONS
-The CPU affinity system calls were introduced in Linux kernel 2.5.8.
-The library interfaces were introduced in glibc 2.3.
-Initially, the glibc interfaces included a
-.I cpusetsize
-argument.
-In glibc 2.3.3, the
-.I cpusetsize
-argument was removed, but this argument was restored in glibc 2.3.4.
-.fi
.SH "SEE ALSO"
.BR clone (2),
.BR getpriority (2),
exit(EXIT_SUCCESS);
}
.fi
+.SH VERSIONS
+.BR pselect ()
+was added to Linux in kernel 2.6.16.
+Prior to this,
+.BR pselect ()
+was emulated in glibc (but see BUGS).
.SH "CONFORMING TO"
.BR select ()
conforms to POSIX.1-2001 and
.BR pselect ()
function does not modify its timeout argument;
this is the behaviour required by POSIX.1-2001.
-.SH VERSIONS
-.BR pselect ()
-was added to Linux in kernel 2.6.16.
-Prior to this,
-.BR pselect ()
-was emulated in glibc (but see BUGS).
.SH BUGS
Glibc 2.0 provided a version of
.BR pselect ()
is to be set (for some semaphore of the set) is less than 0
or greater than the implementation limit
.BR SEMVMX .
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001.
+.\" SVr4 documents more error conditions EINVAL and EOVERFLOW.
.SH NOTES
The
.BR IPC_INFO ,
.BR semctl ()
is not a system call, but is implemented via the system call
.BR ipc (2).
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001.
-.\" SVr4 documents more error conditions EINVAL and EOVERFLOW.
.SH "SEE ALSO"
.BR ipc (2),
.BR semget (2),
or the system wide maximum number of semaphores
.RB ( SEMMNS ),
would be exceeded.
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001.
+.\" SVr4 documents additional error conditions EFBIG, E2BIG, EAGAIN,
+.\" ERANGE, EFAULT.
.SH NOTES
.B IPC_PRIVATE
isn't a flag field but a
.BR semctl (2)
.B IPC_STAT
operation can be used to avoid races.)
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001.
-.\" SVr4 documents additional error conditions EFBIG, E2BIG, EAGAIN,
-.\" ERANGE, EFAULT.
.SH "SEE ALSO"
.BR semctl (2),
.BR semop (2),
.BR SEMVMX ,
the implementation dependent maximum value for
.IR semval .
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001.
+.\" SVr4 documents additional error conditions EINVAL, EFBIG, ENOSPC.
.SH NOTES
The
.I sem_undo
.\" http://marc.theaimsgroup.com/?l=linux-kernel&m=110260821123863&w=2
.\" the fix:
.\" http://marc.theaimsgroup.com/?l=linux-kernel&m=110261701025794&w=2
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001.
-.\" SVr4 documents additional error conditions EINVAL, EFBIG, ENOSPC.
.SH "SEE ALSO"
.BR semctl (2),
.BR semget (2),
.BR fork (2)
or
.BR clone (2).
-.SH NOTES
-Process policy is not remembered if the page is swapped out.
.SH RETURN VALUE
On success,
.BR set_mempolicy ()
.BR mbind (2).
.SH CONFORMING TO
This system call is Linux specific.
+.SH NOTES
+Process policy is not remembered if the page is swapped out.
.SH SEE ALSO
.BR mbind (2),
.BR get_mempolicy (2),
.TP
.B ESRCH
A free TLS entry could not be located.
-.SH "CONFORMING TO"
-.BR set_thread_area ()
-is Linux specific and should not be used in programs that are intended
-to be portable.
.SH "VERSIONS"
A version of
.BR set_thread_area ()
first appeared in Linux 2.5.29.
+.SH "CONFORMING TO"
+.BR set_thread_area ()
+is Linux specific and should not be used in programs that are intended
+to be portable.
.SH "SEE ALSO"
.BR get_thread_area (2).
is Linux specific and should not be used in programs intended
to be portable.
It is present since Linux 1.1.44 and in libc since libc 4.7.6.
-.SH BUGS
-No error messages of any kind are returned to the caller.
-At the very
-least,
-.B EPERM
-should be returned when the call fails (because the caller lacks the
-.B CAP_SETGID
-capability).
.SH NOTES
When glibc determines that the argument is not a valid group ID,
it will return \-1 and set \fIerrno\fP to EINVAL without attempting
Note that at the time this system call was introduced, a process
could send a signal to a process with the same effective user ID.
Today signal permission handling is slightly different.
+.SH BUGS
+No error messages of any kind are returned to the caller.
+At the very
+least,
+.B EPERM
+should be returned when the call fails (because the caller lacks the
+.B CAP_SETGID
+capability).
.SH "SEE ALSO"
.BR kill (2),
.BR setfsuid (2),
.B EPERM
The calling process is not privileged (did not have the CAP_SETUID
capability) and tried to change the IDs to values that are not permitted.
+.SH VERSIONS
+These calls are available under Linux since Linux 2.1.44.
.SH "CONFORMING TO"
These calls are non-standard;
they also appear on HP-UX and some of the BSDs.
-.SH VERSIONS
-It is available under Linux since Linux 2.1.44.
.SH NOTES
Under HP-UX and FreeBSD the prototype is found in
.IR <unistd.h> .
or (ii) setting one to the value of the other or (iii) setting the
effective user (group) ID to the value of the
saved set-user-ID (saved set-group-ID) was specified.
-.SH NOTES
-Setting the effective user (group) ID to the
-saved set-user-ID (saved set-group-ID) is
-possible since Linux 1.1.37 (1.1.38).
.SH "CONFORMING TO"
POSIX.1-2001, 4.3BSD (the
.BR setreuid ()
and
.BR setregid ()
function calls first appeared in 4.2BSD).
+.SH NOTES
+Setting the effective user (group) ID to the
+saved set-user-ID (saved set-group-ID) is
+possible since Linux 1.1.37 (1.1.38).
.SH "SEE ALSO"
.BR getgid (2),
.BR getuid (2),
Thus, in particular,
.BR setsid ()
fails if the calling process is already a process group leader.
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001.
.SH NOTES
A child created via
.BR fork (2)
.BR _exit (2),
and have the child do
.BR setsid ().
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001.
.SH "SEE ALSO"
.BR setpgid (2),
.BR setpgrp (2),
(Since Linux 2.6.9, this error can also occur if the
.BR RLIMIT_MEMLOCK
is 0 and the caller is not privileged.)
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001.
+.\" SVr4 documents additional error conditions EINVAL,
+.\" ENOENT, ENOSPC, ENOMEM, EEXIST. Neither SVr4 nor SVID documents
+.\" an EIDRM error condition.
.SH NOTES
The
.BR IPC_INFO ,
a recompilation under glibc-2.1.91 or later should suffice.
(The kernel distinguishes old and new calls by an IPC_64 flag in
.IR cmd .)
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001.
-.\" SVr4 documents additional error conditions EINVAL,
-.\" ENOENT, ENOSPC, ENOMEM, EEXIST. Neither SVr4 nor SVID documents
-.\" an EIDRM error condition.
.SH "SEE ALSO"
.BR mlock (2),
.BR setrlimit (2),
flag was specified, but the caller was not privileged (did not have the
.B CAP_IPC_LOCK
capability).
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001.
+.\" SVr4 documents an additional error condition EEXIST.
+
+.B SHM_HUGETLB
+is a non-portable Linux extension.
.SH NOTES
.B IPC_PRIVATE
isn't a flag field but a
.SH BUGS
The name choice IPC_PRIVATE was perhaps unfortunate, IPC_NEW
would more clearly show its function.
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001.
-.\" SVr4 documents an additional error condition EEXIST.
-
-.B SHM_HUGETLB
-is a non-portable Linux extension.
.SH "SEE ALSO"
.BR shmat (2),
.BR shmctl (2),
.\" The following since 2.6.17-rc1:
.I shmaddr
is not aligned on a page boundary.
+.SH "CONFORMING TO"
+SVr4, POSIX.1-2001.
+.\" SVr4 documents an additional error condition EMFILE.
+
+In SVID 3 (or perhaps earlier)
+the type of the \fIshmaddr\fP argument was changed from
+.I "char *"
+into
+.IR "const void *" ,
+and the returned type of
+.BR shmat ()
+from
+.I "char *"
+into
+.IR "void *" .
+(Linux libc4 and libc5 have the
+.I "char *"
+prototypes; glibc2 has
+.IR "void *" .)
.SH NOTES
Using
.BR shmat ()
The implementation places no intrinsic limit on the per\-process maximum
number of shared memory segments
.RB ( SHMSEG ).
-.SH "CONFORMING TO"
-SVr4, POSIX.1-2001.
-.\" SVr4 documents an additional error condition EMFILE.
-
-In SVID 3 (or perhaps earlier)
-the type of the \fIshmaddr\fP argument was changed from
-.I "char *"
-into
-.IR "const void *" ,
-and the returned type of
-.BR shmat ()
-from
-.I "char *"
-into
-.IR "void *" .
-(Linux libc4 and libc5 have the
-.I "char *"
-prototypes; glibc2 has
-.IR "void *" .)
.SH "SEE ALSO"
.BR brk (2),
.BR mmap (2),
.I time_t
might use some other encoding
where subtraction doesn't work directly.
-.SH "CONFORMING TO"
-SVr4, 4.3BSD, POSIX.1-2001.
.SH "SEE ALSO"
.BR date (1),
.BR gettimeofday (2),
.TP 20
.I /etc/rpc
.PD
-.SH "CONFORMING TO"
-Not in POSIX.1-2001.
-Present on the BSDs, Solaris, and many other systems.
.SH RETURN VALUE
.LP
A
is contained in a static area
so it must be copied if it is
to be saved.
+.SH "CONFORMING TO"
+Not in POSIX.1-2001.
+Present on the BSDs, Solaris, and many other systems.
.SH "SEE ALSO"
.BR rpc (5),
.BR rpcinfo (8),
.TH LD.SO 8 2001-12-16 "" "Linux Programmer's Manual"
.SH NAME
ld.so, ld-linux.so* \- dynamic linker/loader
+.SH SYNOPSIS
+The dynamic linker can be run either indirectly through running some
+dynamically linked program or library (in which case no command line options
+to the dynamic linker can be passed and, in the ELF case, the dynamic linker
+which is stored in the
+.B .interp
+section of the program is executed) or directly by running:
+.P
+.I /lib/ld-linux.so.*
+[OPTIONS] [PROGRAM [ARGUMENTS]]
.SH DESCRIPTION
The programs
.B ld.so
If the binary was linked with
.B \-z nodeflib
linker option, this step is skipped.
-.SH SYNOPSIS
-The dynamic linker can be run either indirectly through running some
-dynamically linked program or library (in which case no command line options
-to the dynamic linker can be passed and, in the ELF case, the dynamic linker
-which is stored in the
-.B .interp
-section of the program is executed) or directly by running:
-.P
-.I /lib/ld-linux.so.*
-[OPTIONS] [PROGRAM [ARGUMENTS]]
.SH OPTIONS
.TP
.B \-\-list