==================== Changes in man-pages-3.01 ==================== Released: 2008-06-25, Munich Contributors ------------ The following people contributed notes, ideas, or patches that have been incorporated in changes in this release: Alain Portal Andreas Herrmann Andrew P Andrew Clayton Bart Van Assche Christian Borntraeger Christoph Hellwig Daniele Giacomini Dorin Lazar George Spelvin Jason Englander Jeff Moyer Laurent Vivier Masatake YAMOTO Matt Mackall Neil Horman Pavel Machek Peter Zijlstra Petr Baudis Petr Gajdos Roman Zippel Sam Varshavchik Samuel Thibault Stephane Chazelas Stuart Cunningham Thomas Gleixner Tolga Dalman Yao Zhao WANG Cong Apologies if I missed anyone! New and rewritten pages ----------------------- acct.5 mtk A complete rewrite of this page, now with much more detail. hostname.7 mtk A description of hostname resolution. Taken from FreeBSD 6.2, and lightly edited for man-pages style. symlink.7 mtk A description of symbolic links. Taken from FreeBSD 6.2, but heavily edited for Linux details, improved readability, and man-pages style. Newly documented interfaces in existing pages --------------------------------------------- getrlimit.2 mtk / Peter Zijlstra Add description of RLIMIT_RTTIME limit, new in 2.6.25. mkstemp.3 mtk Add description of mkostemp(), new in glibc 2.7. core.5 mtk, after a note by Petr Gajdos; review by Neil Horman Document core_pattern pipe syntax, which appeared in kernel 2.6.19. Add an example program demonstrating use of core_pattern pipe syntax. mtk Document /proc/PID/coredump_filter, new in kernel 2.6.23. Documentation was based on the text in Documentation/filesystems/proc.txt, plus testing, and checking the kernel source. proc.5 mtk Document /proc/PID/oom_score, which was new in kernel 2.6.11. This file displays the "badness" score of the process, which provides the basis for OOM-killer decisions. mtk Document /proc/PID/oom_adj, which was new in kernel 2.6.11. This file influences the oom_score of a process. mtk Document /proc/PID/limits, which was new in 2.6.24. This file displays a process's resource limits. mtk Document /proc/PID/fdinfo/*, which was new in 2.6.22. These files display info about each descriptor opened by the process: the current file offset, and the file access mode + file status flags as set in open() or fcntl(F_SETFL). mtk Document /proc/PID/mountinfo, which was new in 2.6.26. This file displays information about mount points. Closely based on text from Documentation/filesystems/proc.txt. mtk Document /proc/PID/mountstats, which was new in 2.6.17. This file displays statistics about mount points. mtk Document /proc/PID/status. Samuel Thibault / mtk, review by Laurent Vivier, Christian Borntraeger, and Andrew P Document guest (virtual CPU) time field in /proc/stat. Document guest (virtual CPU) time fields in /proc/PID/stat. New links --------- mkostemp.3 mtk Link to mkstemp.3. getcwd.2 mtk Link to getcwd.3, which describes several interfaces, among them getcwd(), which is in fact a system call. sched_setaffinity.2 sched_setscheduler.2 set_mempolicy.2 mbind.2 mtk SEE ALSO: Add cpuset(7). Global changes -------------- chown.2 faccessat.2 fchmodat.2 fchownat.2 fstatat.2 getxattr.2 link.2 linkat.2 listxattr.2 open.2 readlink.2 removexattr.2 rename.2 setxattr.2 stat.2 symlink.2 symlinkat.2 unlink.2 futimes.3 remove.3 path_resolution.7 mtk SEE ALSO: Add symlink(7). intro.1 time.1 fcntl.2 gethostbyname.3 ioctl_list.2 mtk Wrap source lines so that new sentence starts on new line. addseverity.3 backtrace.3 dlopen.3 fmtmsg.3 getnameinfo.3 getpt.3 grantpt.3 makecontext.3 ptsname.3 tcgetsid.3 unlockpt.3 wordexp.3 mtk Added VERSIONS section. msgctl.2 msgget.2 semget.2 semop.2 pciconfig_read.2 basename.3 cmsg.3 ftok.3 console_ioctl.4 tzfile.5 mq_overview.7 pty.7 mtk For consistency, "fix" cases where argument of .B or .I was on the following source line. adjtimex.2 getrusage.2 io_getevents.2 poll.2 select.2 semop.2 sigwaitinfo.2 aio_suspend.3 clock_getres.3 mq_receive.3 mq_send.3 sem_wait.3 proc.5 mtk SEE ALSO: add time(7) Typographical or grammatical errors have been corrected in several places. (Special thanks to Nicolas François and Alain Portal.) Changes to individual pages --------------------------- acct.2 mtk Add a few more words to DESCRIPTION. NOTES: Add pointer to acct(5). alarm.2 Alain Portal s/process/calling process/ so as to say that the alarm signal is delivered to the calling process. brk.2 Yao Zhao / mtk Clarify discussion of return value of sbrk(). mtk DESCRIPTION: Add some sentences giving an overview of these interfaces. Add note recommending use of malloc(3). Change name of brk() argument to the simpler 'addr'. Add "(void *)" cast to "-1" for error return of sbrk(). Removed some incorrect text about "brk(0)". Note that SUSv2 specified the return value of sbrk(). Added a detail on the glibc brk() wrapper. Remove discussions of old standards (C89 and POSIX.1-1990); CONFORMING TO already discusses the situation with respect to more recent standards. chmod.2 mtk Clarify description of chmod() and fchmod(). Add further detail on S_ISUID, S_ISGID, and S_ISVTX permissions. Reformat list of permissions bits. chown.2 mtk Describe rules governing ownership of new files (bsdgroups versus sysvgroups, and the effect of the parent directory's set-group-ID permission bit). chroot.2 Alain Portal Clarify description a little. s/changes the root directory/ changes the root directory of the calling process/ execve.2 mtk Fix text that warns against use of NULL argv and envp. Using a NULL envp does in fact seem to be portable (works on Solaris and FreeBSD), but the Linux semantics for a NULL argv certainly aren't consistent with other implementations. See http://bugzilla.kernel.org/show_bug.cgi?id=8408. getdents.2 mtk, after a note from George Spelvin Document d_type field, present since kernel 2.6.4. Other minor edits. getitimer.2 mtk Noted that POSIX.1 leaves interactions with alarm(), sleep(), and usleep() unspecified. Linux 2.6.16 removed the MAX_SEC_IN_JIFFIES ceiling on timer values. Other minor changes. io_cancel.2 io_destroy.2 io_getevents.2 io_setup.2 io_submit.2 mtk, after a note by Masatake YAMOTO and input from Jeff Moyer Describe the unconventional error return provided by the wrapper function in libaio (and contrast with behavior if the system call is invoked via syscall(2)). See http://thread.gmane.org/gmane.linux.ltp/4445/ Alain Portal / mtk Re-order ERRORS and SEE ALSO entries to be alphabetical. io_getevents.2 Alain Portal Small wording fix. io_submit.2 Jeff Moyer s/AIO request blocks/AIO control blocks/ mknod.2 mtk Note that EEXIST applies, even if the pathname is a (possibly dangling) symbolic link. nanosleep.2 mtk, after a report from Stephane Chazelas Remove crufty discussion of HZ, and replace with a pointer to time(7). See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=485636 mtk, after some discussions with Bart Van Assche and Roman Zippel NOTES: describe CLOCK_REALTIME versus CLOCK_NANOSLEEP See also http://thread.gmane.org/gmane.linux.kernel/696854/ "nanosleep() uses CLOCK_MONOTONIC, should be CLOCK_REALTIME?" mtk Replace mentions of "process' by "thread". NOTES: describe case where clock_nanosleep() can be preferable. Some minor rewrites. open.2 mtk, after a note from Christoph Hellwig NOTES: Note that access mode flags are not single bits, and document the Linuxism "access mode 3". See also http://thread.gmane.org/gmane.linux.kernel/653123. readdir.2 mtk Minor wording fixes. recv.2 Alain Portal Add comment to 'ee_pad' field in structure definition. sched_setscheduler.2 mtk Add pointer to discussion of RLIMIT_RTTIME in getrlimit.2. mtk, after a note by Andrew Clayton Rewrote and restructured various parts of the page for greater clarity. mtk Add more detail to the rules that are applied when an unprivileged process with a non-zero RLIMIT_RTPRIO limit changes policy and priority. SEE ALSO: Add Documentation/scheduler/sched-rt-group.txt sync_file_range.2 Pavel Machek SYNC_FILE_RANGE_WRITE can block on writes greater than request queue size. For some background, see http://thread.gmane.org/gmane.linux.kernel/687713/focus=688340 syscalls.2 mtk Added system call history back to version 1.2. Fix typo on kernel version for pivot_root(). syslog.2 WANG Cong Document ENOSYS error, which can occur if kernel was built without CONFIG_PRINTK. utime.2 Nicolas François Clarify description of 'times' array for utimes(). adjtime.3 mtk The longstanding bug that if delta was NULL, olddelta didn't return the outstanding clock adjustment, is now fixed (since glibc 2.8 + kernel 2.6.26). http://sourceware.org/bugzilla/show_bug?id=2449 http://bugzilla.kernel.org/show_bug.cgi?id=6761 dprintf.3 mtk Note that these functions are included in the next POSIX revision. Remove editorial discussion about what the functions should have been named. ftime.3 mtk Rewrote various pieces, and added some details. getaddrinfo.3 mtk Improve description or 'hints' and 'res' arguments. Add details on numeric strings that can be specified for 'node'. Other fairly major restructurings and rewrites to improve logical structure and clarity of the page. SEE ALSO: Add hostname(7). gethostbyname.3 mtk DESCRIPTION: Add reference to inet_addr(3) for dotted notation. SEE ALSO: add inet(3). mtk Added BUGS section noting that gethostbyname() does not recognize hexadecimal components in dotted address strings; See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482973 getmntent.3 mtk, after Stuart Cunningham pointed out the typo Remove statement that LSB deprecates the functions "endmntent(), setmntent() [sic] and setmntent()". This doesn't seem to be true (I can't find mention of it being deprecated in any of the LSB specs). Rather, LSB simply doesn't specify these functions. (LSB 1.3 had a spec of setmntent(), but not getmntent() or endmntent(), and noted that having a spec of setmntent() was of little use without also having a spec of getmntent().) See also https://lists.linux-foundation.org/pipermail/\ lsb-discuss/2006-October/003078.html getnameinfo.3 Tolga Dalman Remove mention of sa_len field from example code. That field is a BSDism not present on Linux. mtk Various minor changes. inet.3 mtk / Stephane Chazelas inet_aton() is *not* in POSIX.1. Rewrote discussion of why inet_addr() is disfavored. SEE ALSO: Add getaddrinfo(3). as per http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482979. mtk, after a note by Stephane Chazelas Describe the various address forms supported by inet_aton(). mtk Rewrite description of inet_network(). Clarify discussion of inet_lnaof(), inet_netof(), and inet_makeaddr(). Add discussion of Classful Addressing, noting that it is obsolete. Added an EXAMPLE program. mtk Relocate discussion of i386 byte order to NOTES. Note that inet_aton() returns an address in network byte order. SEE ALSO: Add byteorder(3) and getnameinfo(3). inet_ntop.3 mtk Remove unneeded header files from SYNOPSIS. SEE ALSO: Add inet(3) and getnameinfo(3). Make NAME line more precise. Move errors to an ERRORS section. Add EXAMPLE section pointing to inet_pton(3). inet_pton.3 mtk / Stephane Chazelas Remove statement that inet_pton() extends inet_ntoa(); that's not really true, since inet_pton() doesn't support all of the string forms that are supported by inet_ntoa(). SEE ALSO: Add getaddrinfo(3). as per http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482987. mtk Describe IPv6 address formats. Describe dotted decimal format in more detail. Add an example program. mtk Remove unneeded header files from SYNOPSIS. Make NAME line more precise. Make description of return value more precise. SEE ALSO: Add inet(3). mkfifo.3 mtk Note that EEXIST applies, even if the pathname is a (possibly dangling) symbolic link. mkstemp.3 mtk Fix discussion of O_EXCL flag. These functions may also fail for any of the errors described in open(2). Various other rewordings. readdir.3 mtk Document DT_LNK (symbolic link) for d_type field. Reorder DT_ entries alphabetically. remainder.3 mtk Recommend against drem(), in favor of remainder(). scanf.3 mtk, after a note from Stephane Chazelas Add an ERRORS section documenting at least some of the errors that may occur for scanf(). See also http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=487254. mtk, after a note from Stephane Chazelas; review by Stephane Chazelas Document the GNU 'a' modifier for dynamically allocating strings. See also http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=487254. Document the GNU 'm' modifier for dynamically allocating strings. strcat.3 Andreas Herrmann s/strcat/strncat/ (a typo that changed the semantics in DESCRIPTION). strerror.3 mtk, after a note from Daniele Giacomini Modify SYNOPSIS to show protoypes of both versions of strerror_r(), and make other small clarifications of the description regarding the two versions. random.4 George Spelvin (taking time out from his busy Broadway schedule), with some tweaks by Matt Mackall and mtk Add a Usage subsection that recommends most users to use /dev/urandom, and emphasizes parsimonious usage of /dev/random. locale.5 Petr Baudis LC_TIME: Describe first_weekday and first_workday. proc.5 mtk The vaious CPU time fields in /proc/stat and /proc/PID/stat return time in clock ticks (USER_HZ, cputime_to_clock_t(), sysconf(_SC_CLK_TCK)). Updated, clarified and expanded the description several fields in /proc/[number]/stat. mtk Clarified and expanded the description of /proc/[number]/fd. mtk Updated and clarified the description of /proc/[number]/statm. mtk Updated and clarified the description of /proc/sys/fs/dentry-state. mtk Many formatting, wording, and grammar fixes. man-pages.7 mtk Enhanced description of VERSIONS section. mq_overview.7 mtk Note that Linux does not currently support ACLs for POSIX message queues. sem_overview.7 mtk Note that Linux supports ACLs on POSIX named semaphores since 2.6.19. time.7 mtk, with some suggestions from Bart Van Assche and Thomas Gleixner Added some details about where jiffies come into play. Added section on high-resolution timers. Mentioned a few other time-related interfaces at various points in the page. See http://thread.gmane.org/gmane.linux.kernel/697378. unix.7 mtk, after a note by Samuel Thibault Provide a clear description of the three types of address that can appear in the sockaddr_un structure: pathname, unnamed, and abstract.