Opened 6 years ago
Closed 6 years ago
#4548 closed task (fixed)
man-pages-5.04
| Reported by: | Bruce Dubbs | Owned by: | lfs-book |
|---|---|---|---|
| Priority: | normal | Milestone: | 9.1 |
| Component: | Book | Version: | SVN |
| Severity: | normal | Keywords: | |
| Cc: |
Description
New minor version.
Note:
See TracTickets
for help on using tickets.

Released: 2019-11-19, Munich
Newly documented interfaces in existing pages clone.2 Document clone3() wait.2 Add P_PIDFD for waiting on a child referred to by a PID file descriptor bpf-helpers.7 Refresh against kernel v5.4-rc7 New and changed links clone3.2 New link to clone(2) Changes to individual pages clone.2 Rename arguments for consistency with clone3() Make the names of the clone() arguments the same as the fields in the clone3() 'args' struct: ctid ==> child_pid ptid ==> parent_tid newtls ==> tld child_stack ==> stack Consistently order paragraphs for CLONE_NEW* flags Sometimes the descriptions of these flags mentioned the corresponding section 7 namespace manual page and then the required capabilities, and sometimes the order was the was the reverse. Make it consistent. EXAMPLE: Allocate child's stack using mmap(2) rather than malloc(3) Christian Brauner suggested mmap(MAP_STACK), rather than malloc(), as the canonical way of allocating a stack for the child of clone(), and Jann Horn noted some reasons why (MAP_STACK exists elsewhere, and mmap() returns a page-aligned block of memory, which is useful if we want to set up a guard page at the end of the stack). Tidy up the description of CLONE_DETACHED The obsolete CLONE_DETACHED flag has never been properly documented, but now the discussion CLONE_PIDFD also requires mention of CLONE_DETACHED. So, properly document CLONE_DETACHED, and mention its interactions with CLONE_PIDFD. Give the introductory paragraph a new coat of paint Change the text in the introductory paragraph (which was written 20 years ago) to reflect the fact that clone*() does more things nowadays. Remove wording that suggests CLONE_NEW* flags are for containers These flags are used for implementing many other interesting things by now. Remove various details that are already covered in namespaces pages Remove details of UTS, IPC, and network namespaces that are already covered in the corresponding namespaces pages in section 7. clone.2 proc.5 Adjust references to namespaces(7) Adjust references to namespaces(7) to be references to pages describing specific namespace types. fallocate.2 Add gfs2 to the list of punch hole-capable filesystems ioctl_iflags.2 Emphasize that FS_IOC_GETFLAGS and FS_IOC_SETFLAGS argument is 'int *' ioctl_list.2 Add reference to ioctl(2) SEE ALSO section The referenced section lists various pages that document ioctls. mmap.2 Note that MAP_STACK exists on some other systems Some rewording of the description of MAP_STACK Reword a little to allow for the fact that there are now *two* reasons to consider using this flag. pidfd_open.2 Note the waitid() use case for PID file descriptors Add a subsection header "Use cases for PID file descriptors" Make it a little more explicit the CLONE_PIDFD returns a PID FD pivot_root.2 EXAMPLE: allocate stack using mmap() MAP_STACK rather than malloc() quotactl.2 Add some details about Q_QUOTAON seccomp.2 cgroups.7 Switch to "considerate language" Thanks-to: https://twitter.com/expensivestevie select.2 POLLIN_SET/POLLOUT_SET/POLLEX_SET are now defined in terms of EPOLL* Since kernel commit a9a08845e9acbd224e4ee466f5c1275ed50054e8, the equivalence between select() and poll()/epoll is defined in terms of the EPOLL* constants, rather than the POLL* constants. wait.2 waitid() can be used to wait on children in same process group as caller Since Linux 5.4, idtype == P_PGID && id == 0 can be used to wait on children in same process group as caller. Clarify semantics of waitpid(0, ...) As noted in kernel commit 821cc7b0b205c0df64cce59aacc330af251fa8f7, threads create an ambiguity: what if the calling process's PGID is changed by another thread while waitpid(0, ...) is blocked? So, clarify that waitpid(0, ...) means wait for children whose PGID matches the caller's PGID at the time of the call to waitpid(). getauxval.3 Clarify that AT_BASE_PLATFORM and AT_EXECFN return pointers to strings See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=942207 resolv.conf.5 Attempt clarify domain/search interaction The domain directive is historic at this point; it should not be used. netdevice.7 Small wording fix in description of SIOCGIFCONF SIOCGIFCONF returns "network layer" addresses (not "transport layer"). uts_namespaces.7 Add a little more detail on scope of UTS namespaces