==================== Changes in man-pages-4.12 ==================== Released: ????-??-??, London Contributors ------------ The following people contributed patches/fixes or (noted in brackets in the changelog below) reports, notes, and ideas that have been incorporated in changes in this release: Alex Henrie Andi Kleen Arjun Shankar Brad Bendily Cameron Wright Carlos O'Donell Darrick J. Wong David Lewis DJ Delorie Douglas Caetano dos Santos Dr. Tobias Quathamer Eric Biggers Ferdinand Thiessen G. Branden Robinson Heinrich Schuchardt Henry Bent Jakub Wilk Janne Snabb Joe Brown Jorge Nerin Kirill Tkhai lilydjwg Long Wang Michael Kerrisk Mike Frysinger Nadav Har'El NeilBrown Pavel Tikhomirov Quentin Rameau Ruben Kerkhof sulit 石井大貴 Apologies if I missed anyone! Newly documented interfaces in existing pages --------------------------------------------- namespaces.7 Kirill Tkhai [Michael Kerrisk] Document the /proc/[pid]/ns/pid_for_children file Changes to individual pages --------------------------- ldd.1 Michael Kerrisk 'objdump -p prog | grep NEEDED' doesn't give quite same info as 'ldd' chmod.2 Michael Kerrisk Put fchmod() feature test macro requirements in a more readable format Michael Kerrisk Note glibc 2.24 feature test macro requirements changes for fchmod() chown.2 Michael Kerrisk When file owner or group is changed, file capabilities are cleared Michael Kerrisk Changes to file owner by root also clear set-UID and set-GID bits clone.2 Michael Kerrisk Update BUGS to reflect fact that PID caching was removed in glibc 2.25 epoll_wait.2 Michael Kerrisk Clarify semantics of returned 'data' field The returned 'data' is the 'data' most recently set via epoll_ctl(). get_mempolicy.2 Michael Kerrisk [Nadav Har'El, Andi Kleen] SYNOPSIS: fix return type of get_mempolicy() See https://bugzilla.kernel.org/show_bug.cgi?id=97051 getpid.2 Carlos O'Donell, Michael Kerrisk Note that PID caching is removed as of glibc 2.25 Since glibc 2.25 the PID cache is removed. Rationale given in the release notes: https://sourceware.org/glibc/wiki/Release/2.25#pid_cache_removal ioctl.2 Michael Kerrisk SEE ALSO: add ioctl_getfsmap(2) ioctl_getfsmap.2 Michael Kerrisk Fix ordering of sections Michael Kerrisk Add VERSIONS section ioctl_getfsmap.2 Darrick J. Wong Document the GETFSMAP ioctl Document the new GETFSMAP ioctl that returns the physical layout of a (disk-based) filesystem. Michael Kerrisk ERRORS: order alphabetically madvise.2 Michael Kerrisk Remove bogus text re POSIX_MADV_NOREUSE There is a POSIX_FADV_NOREUSE for posix_fadvise(), but no POSIX_MADV_NOREUSE for any API in POSIX. membarrier.2 Michael Kerrisk Add ENOSYS error for 'nohz_full' CPU setting mount.2 NeilBrown Revise description of MS_REMOUNT | MS_BIND MS_REMOUNT|MS_BIND affects all per-mount-point flag. MS_RDONLY is only special because it, uniquely, is both a per-mount-point flag *and* a per-filesystem flag. So the sections of per-mount-point flags and MS_REMOUNT can usefully be clarified. open.2 Michael Kerrisk Note some further advantages of the *at() APIs pipe.2 Michael Kerrisk SEE ALSO: add tee(2) and vmsplice(2) readv.2 Michael Kerrisk glibc 2.26 adds library support for preadv2() and pwritev2() sched_setaffinity.2 Michael Kerrisk Mention cpuset cgroups as a cause of EINVAL error seccomp.2 Mike Frysinger Expand SECCOMP_RET_KILL documentation sigaction.2 Michael Kerrisk Note feature test macro requirements for 'si_code' constants Michael Kerrisk Add a subheading for the description of 'si_code' Michael Kerrisk TRAP_BRANCH and TRAP_HWBKPT are present only on IA64 sigaltstack.2 Michael Kerrisk Note that specifying SS_ONSTACK in ss.ss_flags decreases portability In the Illumos source (which presumably mirrors its Solaris ancestry), there is this check in the sigaltstack() implementation: if (ss.ss_flags & ~SS_DISABLE) return (set_errno(EINVAL)); And in the FreeBSD source we find similar: if ((ss->ss_flags & ~SS_DISABLE) != 0) return (EINVAL); Michael Kerrisk Note buggy addition of ss.ss_flags==SS_ONSTACK Note buggy addition of ss.ss_flags==SS_ONSTACK as a synonym for ss_flags==0. No other implemenation does this, AFAIK. And it was not needed :-(. Michael Kerrisk Specifying 'ss' returns the current settings without changing them Michael Kerrisk Give 'oss' argument a more meaningful name: 'old_ss' Michael Kerrisk Some minor reworking of the text Michael Kerrisk ERRORS: update description of EINVAL error splice.2 tee.2 vmsplice.2 Michael Kerrisk SEE ALSO: add pipe(7) splice.2 Michael Kerrisk ERRORS: split EINVAL error cases Michael Kerrisk ERRORS: add EINVAL for case where both descriptors refer to same pipe timer_create.2 Michael Kerrisk Document the CONFIG_POSIX_TIMERS option added in Linux 4.10 wait.2 Michael Kerrisk Note glibc 2.26 changes to feature test macro requirements for waitid() acosh.3 asinh.3 atanh.3 Alex Henrie Remove C89 designation. See https://bugzilla.kernel.org/show_bug.cgi?id=196319 [mtk: confirmed from review of draft of C90 standard] bsd_signal.3 Michael Kerrisk Note feature test macro requirements changes for glibc 2.26 dl_iterate_phdr.3 Michael Kerrisk dl_iterate_phdr() shows the order in which objects were loaded dl_iterate_phdr() tells us not just which objects are loaded, but also the order in which they are loaded (the "link-map order"). Since the order is relevant for understanding symbol resolution, give the reader this clue. Michael Kerrisk Expand the code example, and show sample output Michael Kerrisk List values for the 'p_type' field dlsym.3 Michael Kerrisk _GNU_SOURCE is needed to get RTLD_DEFAULT and RTLD_NEXT definitions flockfile.3 Michael Kerrisk Note glibc 2.24 feature test macro requirement changes fpathconf.3 Michael Kerrisk Rework RETURN VALUE description to add more detail Michael Kerrisk Add an errors section Michael Kerrisk Largely rewrite the description of _PC_CHOWN_RESTRICTED Michael Kerrisk Rewrite description of _PC_PIPE_BUF The existing description was not accurate, and lacked details. ftw.3 Michael Kerrisk BUGS: document a probable glibc regression in FTW_SLN case See https://bugzilla.redhat.com/show_bug.cgi?id=1422736 and http://austingroupbugs.net/view.php?id=1121. getaddrinfo.3 Quentin Rameau Fix _POSIX_C_SOURCE value for getaddrinfo() The correct _POSIX_C_SOURCE value is 200112L, not 201112L in features.h. getcontext.3 Carlos O'Donell Exemplar structure should use 'ucontext_t'. In glibc we just finished a round of purging 'struct ucontext' which is not in the POSIX reserved namespace of *_t tags. This has some consequences to applications using the non-standard struct ucontext: https://sourceware.org/glibc/wiki/Release/2.26#Removal_of_.27struct_ucontext.27 but it also fixes a namespace conformance issue which is always a longterm pain for large portable programs. It was noted by Peter Maydell (https://sourceware.org/bugzilla/show_bug.cgi?id=21457) that the linux man pages still had references to 'struct ucontext' but only in the form of an exemplar structure. The patch fixes the exemplar to match what is in glibc and therefore it won't ever suggest users can use 'struct ucontext'. getgrent.3 Michael Kerrisk Note glibc 2.22 changes for feature test macro requirements grantpt.3 ptsname.3 unlockpt.3 Ferdinand Thiessen [Michael Kerrisk] Update feature test macro-requirements for glibc 2.24 if_nametoindex.3 Douglas Caetano dos Santos Add ENODEV error for if_nametoindex() Checked against glibc and kernel code: when given name isn't a valid interface, kernel returns ENODEV and glibc just forwards it. malloc.3 Michael Kerrisk Document the reallocarray() added in glibc 2.26 nl_langinfo.3 Michael Kerrisk Note feature test macro requirements for nl_langinfo_l() posix_madvise.3 Dr. Tobias Quathamer Remove paragraph about POSIX_FADV_NOREUSE POSIX_FADV_NOREUSE is documented for posix_fadvise, and a corresponding POSIX_MADV_NOREUSE flag is not specified by POSIX. Thanks to Marc Lehmann See https://bugs.debian.org/865699 ptsname.3 Michael Kerrisk [Arjun Shankar] Since glibc 2.26, ptsname_r() no longer gives EINVAL for buf==NULL rand.3 Michael Kerrisk Note glibc 2.24 feature test macro requirement changes for rand_r() resolver.3 Michael Kerrisk Add basic notes on 'op' argument of res_nmkquery() and res_mkquery() sigpause.3 Michael Kerrisk Note glibc 2.26 changes to feature test macro requirements sigwait.3 Michael Kerrisk Note glibc 2.26 feature test macro changes strtol.3 Heinrich Schuchardt Mention 0X prefix The prefix 0x may be capitalized as 0X. See ISO/IEC 9899:1999. sysconf.3 Michael Kerrisk [Pavel Tikhomirov] Rework RETURN VALUE description to add more detail Make the discussion clearer, and add a few details. Also, fix the problem report from Pavel Tikhomirov who noted that the man page falsely said that errno is not changed on a successful return. Addresses https://bugzilla.kernel.org/show_bug.cgi?id=195955 sysconf.3 Michael Kerrisk Add ERRORS section ttyslot.3 Michael Kerrisk Fix error in feature test macro requirements Michael Kerrisk Note feature test macro requirements changes in glibc 2.24 Michael Kerrisk Clarify details of use of file unlocked_stdio.3 Michael Kerrisk Note glibc 2.24 feature test macro requirement changes elf.5 Michael Kerrisk SEE ALSO: add dl_iterate_phdr(3) nsswitch.conf.5 DJ Delorie Clarify group merge rules This minor patch clarifies when merging is not done, and how duplicate entries are merged. Found while extending glibc's NSS test suite, discussed with glibc team and Stephen Gallagher. proc.5 Michael Kerrisk Document that 'iowait' field of /proc/stat is unreliable Text taken from Chao Fan's kernel commit 9c240d757658a3ae996. slabinfo.5 Michael Kerrisk [Jorge Nerin] SEE ALSO: add some references to relevant kernel source files tmpfs.5 Michael Kerrisk SEE ALSO: add memfd_create(2), mmap(2), shm_open(3) capabilities.7 Michael Kerrisk Clarify the effect on process capabilities when UID 0 does execve(2) Michael Kerrisk Note effect on capabilities when a process with UID != 0 does execve(2) Michael Kerrisk [David Lewis] Fix reversed descriptions of CAP_MAC_OVERRIDE and CAP_MAC_ADMIN Michael Kerrisk SEE ALSO: add filecap(8), netcap(8), pscap(8) cgroup_namespaces.7 Michael Kerrisk Add some further explanation of the example shell session Michael Kerrisk Fix a bug in shell session example Michael Kerrisk Some minor wording fixes and clarifications inode.7 Michael Kerrisk Note glibc 2.24 feature test macro changes for S_IFSOCK and S_ISSOCK() man.7 G. Branden Robinson Undocument "URL" macro in man(7) in favor .UR+.UE pid_namespaces.7 Michael Kerrisk Mention /proc/[pid]/ns/pid_for_children pipe.7 Michael Kerrisk SEE ALSO: add tee(2) and vmsplice(2) sigevent.7 Michael Kerrisk Mention signal.h header file signal.7 Michael Kerrisk [lilydjwg] Since Linux 3.8, read(2) on an inotify FD is restartable with SA_RESTART See https://bugzilla.kernel.org/show_bug.cgi?id=195711 Michael Kerrisk read() from an inotify FD is no longer interrupted by a stop signal (Change was in Linux 3.8.) tcp.7 Michael Kerrisk Document value '2' for tcp_timestamps Since Linux 4.10, the value '2' is meaningful for tcp_timestamps Ruben Kerkhof Change default value of tcp_frto The default changed in c96fd3d461fa495400df24be3b3b66f0e0b152f9 (Linux 2.6.24). ld.so.8 Michael Kerrisk Greatly expand the explanation of LD_DYNAMIC_WEAK Carlos O'Donell Expand DT_RUNPATH details. ld.so.8: Expand DT_RUNPATH details. Every 3 years we get asked why DT_RUNPATH doesn't work like DT_RPATH. The most recent question was here: https://www.sourceware.org/ml/libc-help/2017-06/msg00013.html We need to expand the description of DT_RUNPATH to cover this situation and explain that the DT_RUNPATH entries apply only to the immediate DT_NEEDED, not that of another, say dlopen'd child object. Michael Kerrisk Since glibc 2.2.5, LD_PROFILE is ignored in secure-execution mode Michael Kerrisk Make notes on secure-execute mode more prominent Place each note on secure-execution mode in a separate paragraph, to make it more obvious. Michael Kerrisk Note that libraries in standard directories are not normally set-UID In secure mode, LD_PRELOAD loads only libraries from standard directories that are marked set-UID. Note that it is unusual for a library to be marked in this way. Michael Kerrisk SEE ALSO: add elf(5) Michael Kerrisk Note version where secure-execution started ignoring LD_USE_LOAD_BIAS Michael Kerrisk Correct glibc version that ignores LD_SHOW_AUXV in secure-execution mode Ignored since 2.3.4 (not 2.3.5). Michael Kerrisk Rewrite LD_DEBUG_OUTPUT description and note that .PID is appended