Gidday, The Linux man-pages maintainer proudly announces:
man-pages-5.02 - man pages for Linux This release resulted from patches, bug reports, reviews, and comments from 28 people, with around 120 commits making changes to over 50 pages. Tarball download: http://www.kernel.org/doc/man-pages/download.html Git repository: https://git.kernel.org/cgit/docs/man-pages/man-pages.git/ Online changelog: http://man7.org/linux/man-pages/changelog.html#release_5.02 A short summary of the release is blogged at: https://linux-man-pages.blogspot.com/2019/08/man-pages-502-is-released.html The current version of the pages is browsable at: http://man7.org/linux/man-pages/ A selection of changes in this release that may be of interest to readers of LKML is shown below. Cheers, Michael ==================== Changes in man-pages-5.02 ==================== Released: 2019-08-02, Munich Newly documented interfaces in existing pages --------------------------------------------- fanotify.7 fanotify_init.2 fanotify_mark.2 Matthew Bobrowski [Amir Goldstein, Jan Kara] Document FAN_REPORT_FID and directory modification events vdso.7 Tobias Klauser [Palmer Dabbelt] Document vDSO for RISCV Changes to individual pages --------------------------- pldd.1 G. Branden Robinson [Michael Kerrisk] Document glibc's unbreakage of tool After a longstanding breakage, pldd now works again (glibc 2.30). execve.2 Michael Kerrisk [Eugene Syromyatnikov] Since Linux 5.1, the limit on the #! line is 255 chars (rather than 127) mprotect.2 Mark Wielaard pkey_mprotect() acts like mprotect() if pkey is set to -1, not 0 pivot_root.2 Michael Kerrisk ERRORS: EINVAL occurs if 'new_root' or its parent has shared propagation Michael Kerrisk 'new_root' must be a mount point It appears that 'new_root' may not have needed to be a mount point on ancient kernels, but already in Linux 2.4.5 this changed. Michael Kerrisk 'put_old' can't be a mount point with MS_SHARED propagation tkill.2 Michael Kerrisk glibc 2.30 provides a wrapper for tgkill() dlopen.3 Michael Kerrisk Clarify the rules for symbol resolution in a dlopen'ed object The existing text wrongly implied that symbol look up first occurred in the object and then in main, and did not mention whether dependencies of main where used for symbol resolution. Michael Kerrisk Clarify when an executable's symbols can be used for symbol resolution The --export-dynamic linker option is not the only way that main's global symbols may end up in the dynamic symbol table and thus be used to satisfy symbol reference in a shared object. A symbol may also be placed into the dynamic symbol table if ld(1) notices a dependency in another object during the static link. Michael Kerrisk An object opened with RTLD_LOCAL can be promoted to RTLD_GLOBAL Michael Kerrisk Note that symbol use might keep a dlclose'd object in memory Michael Kerrisk On dlclose(), destructors are called when reference count falls to 0 Michael Kerrisk Make it clear that RTLD_NODELETE also affects global variables Michael Kerrisk Clarify that constructors are called only when library is first loaded on_exit.3 Michael Kerrisk [Sami Kerola] Stack variables may be out of scope when exit handler is invoked capabilities.7 Michael Kerrisk Add a note about using strace on binaries that have capabilities Michael Kerrisk Add pivot_root(2) to CAP_SYS_ADMIN list Michael Kerrisk CAP_FOWNER also allows modifying user xattrs on sticky directories mount_namespaces.7 Michael Kerrisk Clarify implications for other NS if mount point is removed in one NS If a mount point is deleted or renamed or removed in one mount namespace, this will cause an object that is mounted at that location in another mount namespace to be unmounted (as verified by experiment). This was implied by the existing text, but it is better to make this detail explicit. namespaces.7 Michael Kerrisk Note initial values of hostname and domainname in a new UTS namespace signal.7 Michal Sekletar [Oleg Nesterov, Michael Kerrisk] Clarify that siginfo_t isn't changed on coalescing unix.7 Michael Kerrisk Note SCM_RIGHTS interaction with RLIMIT_NOFILE If the file descriptors received in SCM_RIGHTS would cause the process to its exceed RLIMIT_NOFILE limit, the excess FDs are discarded. user_namespaces.7 Michael Kerrisk Describe the effect of file-related capabilities inside user namespaces Michael Kerrisk Describe how kernel treats UIDs/GIDs when a process accesses files vdso.7 Tobias Klauser Mention removal of Blackfin port in Linux 4.17 ld.so.8 Michael Kerrisk [Matthias Hertel] Note some further details of secure-execution mode Note some further details of the treatment of environment variables in secure execution mode. In particular (as noted by Matthias Hertel), note that ignored environment variables are also stripped from the environment. Furthermore, there are some other variables, not used by the dynamic linker itself, that are also treated in this way (see the glibc source file sysdeps/generic/unsecvars.h). -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/