aboutsummaryrefslogtreecommitdiffstats
path: root/man2
AgeCommit message (Collapse)AuthorFilesLines
2022-12-04connect.2: tfixAlejandro Colomar1-1/+0
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Cc: Mario Blättermann <mario.blaettermann@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-04symlink.2: tfixAlejandro Colomar1-1/+1
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Cc: Mario Blättermann <mario.blaettermann@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-04Many pages: wfixAlejandro Colomar155-465/+462
Refer consistently to software versions. In most cases, it is done as <software> <version>. In the case of Linux and glibc, use the project name, instead of other terms such as 'kernel' or 'library'. I found the uses of inconsistent language with the following: $ find man* -type f \ | xargs grep -i '\(since\|before\|after\|until\|to\|from\|in\|between\|version\|with\) \(kernel\|version\|2\.\|3\.\|4\.\|5\.\)' \ | sort However, I might have missed some cases. Anyway, 99% consistency is pretty good consistency. We'll fix the remaining cases as we see them. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03wait4.2: SYNOPSIS: Add _NullableAlejandro Colomar1-3/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03wait.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03utimensat.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03utime.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03timerfd_create.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03timer_settime.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03timer_create.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03time.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03splice.2: SYNOPSIS: Add _NullableAlejandro Colomar1-3/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03sigwaitinfo.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03sigprocmask.2: SYNOPSIS: Add _NullableAlejandro Colomar1-7/+8
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03sigaltstack.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03sigaction.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03shmop.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03sendfile.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03semop.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03select.2: SYNOPSIS: Add _NullableAlejandro Colomar1-7/+9
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03request_key.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03recv.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03quotactl.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03poll.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03pidfd_send_signal.2: SYNOPSIS: Add _NullableAlejandro Colomar1-3/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03nanosleep.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03mount.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03listxattr.2: SYNOPSIS: Add _NullableAlejandro Colomar1-3/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03gettimeofday.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03getrlimit.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03getitimer.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03getgroups.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03getcpu.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03fanotify_mark.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03execveat.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03execve.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03epoll_wait.2: SYNOPSIS: Add _NullableAlejandro Colomar1-3/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03epoll_ctl.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03copy_file_range.2: SYNOPSIS: Add _NullableAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03clone.2: SYNOPSIS: Add _NullableAlejandro Colomar1-4/+6
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03clock_nanosleep.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03clock_getres.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03acct.2: SYNOPSIS: Add _NullableAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03accept.2: SYNOPSIS: Add _NullableAlejandro Colomar1-4/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-12-03select_tut.2: tfixJakub Wilk1-1/+1
Add missing comma. Signed-off-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-11-22sendfile.2, vfork.2, alloca.3, getcontext.3, tmpfs.5, ttytype.5, spufs.7: ffixAlejandro Colomar2-2/+5
Break lines containing two man page references into a line for each. This is not only more consistent with our guidelines (man-pages(7)); it also helps prepare for the future adoption of the MR man(7) macro. Cc: "G. Branden Robinson" <g.branden.robinson@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-11-17syscall.2: add loongarchXi Ruoyao1-0/+2
Link: https://lore.kernel.org/loongarch/1f353678-3398-e30b-1c87-6edb278f74db@xen0n.name/ Link: https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/loongarch/sysdep.h Signed-off-by: Xi Ruoyao <xry111@xry111.site> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-11-10Various pages: SYNOPSIS: Use VLA syntax in 'void *' function parametersAlex Colomar31-63/+73
Use VLA syntax also for void *, even if it's a bit more weird. Link: <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2611.htm> Cc: Ingo Schwarze <schwarze@openbsd.org> Cc: JeanHeyd Meneide <wg14@soasis.org> Cc: Martin Uecker <uecker@tugraz.at> Cc: <gcc@gcc.gnu.org> Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-11-10get_mempolicy.2, mbind.2: SYNOPSIS: Use VLA syntax in function parametersAlex Colomar2-3/+6
Use it also with more complex expressions. Link: <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2611.htm> Cc: Ingo Schwarze <schwarze@openbsd.org> Cc: JeanHeyd Meneide <wg14@soasis.org> Cc: Martin Uecker <uecker@tugraz.at> Cc: <gcc@gcc.gnu.org> Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-11-10ioctl_tty.2: ffixAlejandro Colomar1-2/+4
Reported-by: lint-man-mandoc - mandoc(1) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-11-05Various pages: Replace noreturn by [[noreturn]]Alejandro Colomar2-3/+3
ISO C23 will declare the noreturn macro and the _Noreturn function specifier as obsolescent features. They are replaced by the C++-compatible [[noreturn]] attribute. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-11-01madvise.2: add documentation for MADV_COLLAPSEZach O'Keefe2-2/+99
Linux 6.1 introduced MADV_COLLAPSE in upstream commit 7d8faaf15545 ("mm/madvise: introduce MADV_COLLAPSE sync hugepage collapse") and upstream commit 34488399fa08 ("mm/madvise: add file and shmem support to MADV_COLLAPSE"). Update the man-pages for madvise(2) and process_madvise(2). Link: https://lore.kernel.org/linux-mm/20220922224046.1143204-1-zokeefe@google.com/ Link: https://lore.kernel.org/linux-mm/20220706235936.2197195-1-zokeefe@google.com/ Signed-off-by: Zach O'Keefe <zokeefe@google.com> [ alx: Change use of hyphens in 3-word compound adjective ] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-31madvise.2: srcfixAlejandro Colomar1-1/+1
Reported-by: 'make lint-man-groff' Cc: Zach O'Keefe <zokeefe@google.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-31process_madvise.2: fix capability and ptrace requirementsZach O'Keefe1-4/+17
The initial commit of process_madvise(2) to Linux, commit ecb8ac8b1f14 ("mm/madvise: introduce process_madvise() syscall: an external memory hinting API"), relied on PTRACE_MODE_ATTACH_FSCREDS (see ptrace(2)), but was amended by commit 96cfe2c0fd23 ("mm/madvise: replace ptrace attach requirement for process_madvise") which replaced this with a combination of PTRACE_MODE_READ and CAP_SYS_NICE (PTRACE_MODE_READ to prevent leaking ASLR metadata and CAP_SYS_NICE for influencing process performance). The initial commit of process_madvise(2) to man-pages project, made after the second patch, included two errors: 1) CAP_SYS_ADMIN instead of CAP_SYS_NICE 2) PTRACE_MODE_READ_REALCREDS instead of PTRACE_MODE_READ_FSCREDS Correct this in the man-page for process_madvise(2). Fixes: a144f458b ("process_madvise.2: Document process_madvise(2)") Cc: Minchan Kim <minchan@kernel.org> Signed-off-by: Zach O'Keefe <zokeefe@google.com> Reviewed-by: Suren Baghdasaryan <surenb@google.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-30Many pages: Use correct letter case in page titles (TH)Alejandro Colomar262-262/+262
Scripted change: $ find man* -type f \ | xargs grep -L '\.so' \ | while read f; do P=$(basename $f); T=$(grep '\.TH ' $f | cut -f2,3 -d' ' | sed 's/ /./'); p=$(echo $P | tr '[:upper:]' '[:lower:]'); t=$(echo $T | tr '[:upper:]' '[:lower:]'); Tn=$(echo $T | sed 's/\.[^.]\+$//') Pn=$(echo $P | sed 's/\.[^.]\+$//') N=$(man_section $f NAME \ | sed -n '/NAME/,/ - /p' \ | sed 's/ - .*//' \ | grep -v '^NAME$' \ | tr ', ' '\n' \ | grep -i "^$Pn$" \ | head -n1) test $P = $T \ && test -n $N \ && continue; if test "x$p" != "x$t"; then echo 1 $P $T $N; elif test -z "$N"; then echo 2 $P $T $N; else sed -i "/\.TH /s/$Tn/$N/" $f; fi; done; On 10/30/22 23:00, G. Branden Robinson wrote: > For those to whom this change is coming as an unpleasant surprise, the > forthcoming groff 1.23.0 features an option that will reverse this > change at rendering time. > > From groff_man(7): > > -rCT=1 Capitalize titles, setting the man page title (the first > argument to .TH) in full capitals in headers and footers. > This transformation is off by default because it discards > case distinction information. > > This register can also be set in a site-local "man.local" file to force > it on for all pages. On Debian-based systems, this file is in > /etc/groff. The following line will do the trick. > > .nr CT 1 > > The groff_man_style(7) man page offers further examples of such > rendering customization. > > /usr/local/share/groff/site-tmac/man.local > Put site‐local changes and customizations into this file. > > .\" Use narrower indentation on terminals and similar. > .if n .nr IN 4n > .\" Put only one space after the end of a sentence. > .ss 12 0 \" See groff(7). > .\" Keep pages narrow even on wide terminals. > .if n .if \n[LL]>78n .nr LL 78n > .\" Ensure hyperlinks are enabled for terminals. > .nr U 1 > > On multi‐user systems, it is more considerate to users whose > preferences may differ from the administrator’s to be less > aggressive with such settings, or to permit their override > with a user‐specific man.local file. This can be achieved by > placing one or both of following requests at the end of the > site‐local file. > .soquiet \V[XDG_CONFIG_HOME]/man.local > .soquiet \V[HOME]/.man.local > However, a security‐sandboxed man(1) program may lack > permission to open such files. Cc: Ingo Schwarze <schwarze@openbsd.org> Cc: "G. Branden Robinson" <g.branden.robinson@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-30madvise.2: document reliable probe for advice supportZach O'Keefe1-0/+5
EINVAL is an overloaded error code for madvise(2) and it's not clear under what context it means "advice is not valid" vs another error. Explicitly document that madvise(0, 0, advice) can reliably be used to probe for kernel support for "advice", returning zero iff "advice" is supported by the kernel. Signed-off-by: Zach O'Keefe <zokeefe@google.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-30madvise.2: update THP file/shmem documentation for +5.4Zach O'Keefe1-3/+36
Since Linux 5.4, Transparent Huge Pages now support both file-backed memory and shmem memory. Update MADV_HUGEPAGE advice description to reflect this. Additionally, expand the description of requirements for memory to be considered eligible for THP: alignment / mapping requirements, VMA flags, prctl(2) settings, inode status, etc. Signed-off-by: Zach O'Keefe <zokeefe@google.com> [ alx: ffix ] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-29ioctl_tty.2: Document TIOCSERGETLSR/TIOCSER_TEMTPali Rohár1-1/+15
Signed-off-by: Pali Rohár <pali@kernel.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-29Many pages: Use a consistent style for listsAlejandro Colomar64-495/+495
There are different kinds of lists: Tagged paragraphs These are fixed in a separate commit (the previous one). They are used for a list of tags and their descriptions. An example is this commit message itself. Ordered lists Elements are preceeded by a number in parentheses. These represent a set of steps that have an order. When there are substeps, they will be numbered like (4.2). Positional lists Elements are preceeded by a number in square brackets (index). These represent fields in a set. The index will start at: 0 fields of a C data structure, to be consistent with arrays. 1 fields of a file, to be consistent with tools like cut(1). Alternatives list Elements are preceeded by a letter in parentheses. These represent a set of (normally) exclusive alternatives. Bullet lists Elements are preceeded by bullet symbols. Anything that doesn't fit elsewhere usually is covered by this type of list. Notes Not really a list, but the syntax is identical to "positional lists". There should always be 2 spaces between the list symbol and the elements. This doesn't apply to "tagged paragraphs", which use the default indentation rules. Reported-by: Mike Frysinger <vapier@gentoo.org> Cc: <groff@gnu.org> Acked-by: Douglas McIlroy <douglas.mcilroy@dartmouth.edu> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-29Many pages: Use .TP for tagged paragraphsAlejandro Colomar8-45/+71
Reported-by: Mike Frysinger <vapier@gentoo.org> Cc: <groff@gnu.org> Acked-by: Douglas McIlroy <douglas.mcilroy@dartmouth.edu> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-12statx.2, open.2: document STATX_DIOALIGNEric Biggers2-11/+72
Document the STATX_DIOALIGN support for statx() (https://git.kernel.org/linus/725737e7c21d2d25). Reviewed-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Eric Biggers <ebiggers@google.com> [ steve: wfix ] Cc: Steve Izma <sizma@golden.net> [ alx: srcfix ] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-09dist.mk, All pages: .TH: Generate date at 'make dist'Alejandro Colomar275-275/+275
Replace the date by a placeholder (date) in the repo, as we're doing with the version (unreleased). It will be filled when the tarball is generated with 'make dist' (or equivalent) with the date of the most recent git commit that modifies the page (as was done previously by update_timestamps.sh, which has been removed). Scripted change (mostly): $ find man* -type f \ | xargs sed -Ei '/^\.TH /s/.TH +([^ ]+ +[^ ]+) +[^ ]+ +(.*)/.TH \1 (date) \2/' Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-11prctl.2: tfixJakub Wilk1-1/+1
Escape hyphens. Signed-off-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-11fanotify_mark.2: Document FAN_MARK_IGNOREAmir Goldstein1-2/+175
A new flavor of FAN_MARK_IGNORED_MASK that helps to resolve the ambiguity around the combination of event flags and ignore mask. It is also more strict in the events and flags allowed to be set in a non-directory inode mark mask and it mandates the use of FAN_MARK_IGNORED_SURV_MODIFY flag on filesystem, mount and directory inode marks. Reviewed-by: Jan Kara <jack@suse.cz> Reviewed-by: Matthew Bobrowski <repnop@google.com> Signed-off-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-09getent.1, iconv.1, intro.1, ldd.1, locale.1, localedef.1, memusage.1, ↵Alejandro Colomar275-275/+275
memusagestat.1, mtrace.1, pldd.1, sprof.1, time.1, _exit.2, _syscall.2, accept.2, access.2, acct.2, add_key.2, adjtimex.2, alarm.2, alloc_hugepages.2, arch_prctl.2, bdflush.2, bind.2, bpf.2, brk.2, cacheflush.2, capget.2, chdir.2, chmod.2, chown.2, chroot.2, clock_getres.2, clock_nanosleep.2, clone.2, close.2, close_range.2, connect.2, copy_file_range.2, create_module.2, delete_module.2, dup.2, epoll_create.2, epoll_ctl.2, epoll_wait.2, eventfd.2, execve.2, execveat.2, exit_group.2, fallocate.2, fanotify_init.2, fanotify_mark.2, fcntl.2, flock.2, fork.2, fsync.2, futex.2, futimesat.2, get_kernel_syms.2, get_mempolicy.2, get_robust_list.2, getcpu.2, getdents.2, getdomainname.2, getgid.2, getgroups.2, gethostname.2, getitimer.2, getpagesize.2, getpeername.2, getpid.2, getpriority.2, getrandom.2, getresuid.2, getrlimit.2, getrusage.2, getsid.2, getsockname.2, getsockopt.2, gettid.2, gettimeofday.2, getuid.2, getunwind.2, getxattr.2, idle.2, init_module.2, inotify_add_watch.2, inotify_init.2, inotify_rm_watch.2, intro.2, io_cancel.2, io_destroy.2, io_getevents.2, io_setup.2, io_submit.2, ioctl.2, ioctl_console.2, ioctl_fat.2, ioctl_ficlonerange.2, ioctl_fideduperange.2, ioctl_fslabel.2, ioctl_getfsmap.2, ioctl_iflags.2, ioctl_ns.2, ioctl_tty.2, ioctl_userfaultfd.2, ioperm.2, iopl.2, ioprio_set.2, ipc.2, kcmp.2, kexec_load.2, keyctl.2, kill.2, landlock_add_rule.2, landlock_create_ruleset.2, landlock_restrict_self.2, link.2, listen.2, listxattr.2, llseek.2, lookup_dcookie.2, lseek.2, madvise.2, mbind.2, membarrier.2, memfd_create.2, memfd_secret.2, migrate_pages.2, mincore.2, mkdir.2, mknod.2, mlock.2, mmap.2, mmap2.2, modify_ldt.2, mount.2, mount_setattr.2, move_pages.2, mprotect.2, mq_getsetattr.2, mremap.2, msgctl.2, msgget.2, msgop.2, msync.2, nanosleep.2, nfsservctl.2, nice.2, open.2, open_by_handle_at.2, openat2.2, outb.2, pause.2, pciconfig_read.2, perf_event_open.2, perfmonctl.2, personality.2, pidfd_getfd.2, pidfd_open.2, pidfd_send_signal.2, pipe.2, pivot_root.2, pkey_alloc.2, poll.2, posix_fadvise.2, prctl.2, pread.2, process_madvise.2, process_vm_readv.2, ptrace.2, query_module.2, quotactl.2, read.2, readahead.2, readdir.2, readlink.2, readv.2, reboot.2, recv.2, recvmmsg.2, remap_file_pages.2, removexattr.2, rename.2, request_key.2, restart_syscall.2, rmdir.2, rt_sigqueueinfo.2, s390_guarded_storage.2, s390_pci_mmio_write.2, s390_runtime_instr.2, s390_sthyi.2, sched_get_priority_max.2, sched_rr_get_interval.2, sched_setaffinity.2, sched_setattr.2, sched_setparam.2, sched_setscheduler.2, sched_yield.2, seccomp.2, seccomp_unotify.2, select.2, select_tut.2, semctl.2, semget.2, semop.2, send.2, sendfile.2, sendmmsg.2, set_mempolicy.2, set_thread_area.2, set_tid_address.2, seteuid.2, setfsgid.2, setfsuid.2, setgid.2, setns.2, setpgid.2, setresuid.2, setreuid.2, setsid.2, setuid.2, setup.2, setxattr.2, sgetmask.2, shmctl.2, shmget.2, shmop.2, shutdown.2, sigaction.2, sigaltstack.2, signal.2, signalfd.2, sigpending.2, sigprocmask.2, sigreturn.2, sigsuspend.2, sigwaitinfo.2, socket.2, socketcall.2, socketpair.2, splice.2, spu_create.2, spu_run.2, stat.2, statfs.2, statx.2, stime.2, subpage_prot.2, swapon.2, symlink.2, sync.2, sync_file_range.2, syscall.2, syscalls.2, sysctl.2, sysfs.2, sysinfo.2, syslog.2, tee.2, time.2, timer_create.2, timer_delete.2, timer_getoverrun.2, timer_settime.2, timerfd_create.2, times.2, tkill.2, truncate.2, umask.2, umount.2, uname.2, unimplemented.2, unlink.2, unshare.2, uselib.2, userfaultfd.2, ustat.2, utime.2, utimensat.2, vfork.2, vhangup.2, vm86.2, vmsplice.2, wait.2, wait4.2, write.2, open_how.2type, CPU_SET.3, FILE.3, INFINITY.3, MAX.3, MB_CUR_MAX.3, MB_LEN_MAX.3, _Generic.3, __ppc_get_timebase.3, __ppc_set_ppr_med.3, __ppc_yield.3, __setfpucw.3, a64l.3, abort.3, abs.3, acos.3, acosh.3, addseverity.3, adjtime.3, aio_cancel.3, aio_error.3, aio_fsync.3, aio_init.3, aio_read.3, aio_return.3, aio_suspend.3, aio_write.3, alloca.3, argz_add.3, asin.3, asinh.3, asprintf.3, assert.3, assert_perror.3, atan.3, atan2.3, atanh.3, atexit.3, atof.3, atoi.3, backtrace.3, basename.3, bcmp.3, bcopy.3, bindresvport.3, bsd_signal.3, bsearch.3, bstring.3, bswap.3, btowc.3, btree.3, byteorder.3, bzero.3, cabs.3, cacos.3, cacosh.3, canonicalize_file_name.3, carg.3, casin.3, casinh.3, catan.3, catanh.3, catgets.3, catopen.3, cbrt.3, ccos.3, ccosh.3, ceil.3, cexp.3, cexp2.3, cfree.3, cimag.3, circleq.3, clearenv.3, clock.3, clock_getcpuclockid.3, clog.3, clog10.3, clog2.3, closedir.3, cmsg.3, confstr.3, conj.3, copysign.3, cos.3, cosh.3, cpow.3, cproj.3, creal.3, crypt.3, csin.3, csinh.3, csqrt.3, ctan.3, ctanh.3, ctermid.3, ctime.3, daemon.3, dbopen.3, des_crypt.3, difftime.3, dirfd.3, div.3, dl_iterate_phdr.3, dladdr.3, dlerror.3, dlinfo.3, dlopen.3, dlsym.3, drand48.3, drand48_r.3, duplocale.3, dysize.3, ecvt.3, ecvt_r.3, encrypt.3, end.3, endian.3, envz_add.3, erf.3, erfc.3, err.3, errno.3, error.3, ether_aton.3, euidaccess.3, exec.3, exit.3, exp.3, exp10.3, exp2.3, expm1.3, fabs.3, fclose.3, fcloseall.3, fdim.3, fenv.3, ferror.3, fexecve.3, fflush.3, ffs.3, fgetc.3, fgetgrent.3, fgetpwent.3, fgetwc.3, fgetws.3, fileno.3, finite.3, flockfile.3, floor.3, fma.3, fmax.3, fmemopen.3, fmin.3, fmod.3, fmtmsg.3, fnmatch.3, fopen.3, fopencookie.3, fpathconf.3, fpclassify.3, fpurge.3, fputwc.3, fputws.3, fread.3, frexp.3, fseek.3, fseeko.3, ftime.3, ftok.3, fts.3, ftw.3, futimes.3, fwide.3, gamma.3, gcvt.3, get_nprocs_conf.3, get_phys_pages.3, getaddrinfo.3, getaddrinfo_a.3, getauxval.3, getcontext.3, getcwd.3, getdate.3, getdirentries.3, getdtablesize.3, getentropy.3, getenv.3, getfsent.3, getgrent.3, getgrent_r.3, getgrnam.3, getgrouplist.3, gethostbyname.3, gethostid.3, getifaddrs.3, getipnodebyname.3, getline.3, getloadavg.3, getlogin.3, getmntent.3, getnameinfo.3, getnetent.3, getnetent_r.3, getopt.3, getpass.3, getprotoent.3, getprotoent_r.3, getpt.3, getpw.3, getpwent.3, getpwent_r.3, getpwnam.3, getrpcent.3, getrpcent_r.3, getrpcport.3, gets.3, getservent.3, getservent_r.3, getspnam.3, getsubopt.3, getttyent.3, getusershell.3, getutent.3, getutmp.3, getw.3, getwchar.3, glob.3, gnu_get_libc_version.3, grantpt.3, group_member.3, gsignal.3, hash.3, hsearch.3, hypot.3, iconv.3, iconv_close.3, iconv_open.3, if_nameindex.3, if_nametoindex.3, ilogb.3, index.3, inet.3, inet_net_pton.3, inet_ntop.3, inet_pton.3, initgroups.3, insque.3, intro.3, isalpha.3, isatty.3, isfdtype.3, isgreater.3, iswalnum.3, iswalpha.3, iswblank.3, iswcntrl.3, iswctype.3, iswdigit.3, iswgraph.3, iswlower.3, iswprint.3, iswpunct.3, iswspace.3, iswupper.3, iswxdigit.3, j0.3, key_setsecret.3, killpg.3, ldexp.3, lgamma.3, lio_listio.3, list.3, localeconv.3, lockf.3, log.3, log10.3, log1p.3, log2.3, logb.3, login.3, lrint.3, lround.3, lsearch.3, lseek64.3, makecontext.3, makedev.3, mallinfo.3, malloc.3, malloc_get_state.3, malloc_hook.3, malloc_info.3, malloc_stats.3, malloc_trim.3, malloc_usable_size.3, mallopt.3, matherr.3, mblen.3, mbrlen.3, mbrtowc.3, mbsinit.3, mbsnrtowcs.3, mbsrtowcs.3, mbstowcs.3, mbtowc.3, mcheck.3, memccpy.3, memchr.3, memcmp.3, memcpy.3, memfrob.3, memmem.3, memmove.3, mempcpy.3, memset.3, mkdtemp.3, mkfifo.3, mkstemp.3, mktemp.3, modf.3, mpool.3, mq_close.3, mq_getattr.3, mq_notify.3, mq_open.3, mq_receive.3, mq_send.3, mq_unlink.3, mtrace.3, nan.3, netlink.3, newlocale.3, nextafter.3, nextup.3, nl_langinfo.3, ntp_gettime.3, offsetof.3, on_exit.3, open_memstream.3, opendir.3, openpty.3, perror.3, popen.3, posix_fallocate.3, posix_madvise.3, posix_memalign.3, posix_openpt.3, posix_spawn.3, pow.3, pow10.3, printf.3, profil.3, program_invocation_name.3, psignal.3, pthread_atfork.3, pthread_attr_init.3, pthread_attr_setaffinity_np.3, pthread_attr_setdetachstate.3, pthread_attr_setguardsize.3, pthread_attr_setinheritsched.3, pthread_attr_setschedparam.3, pthread_attr_setschedpolicy.3, pthread_attr_setscope.3, pthread_attr_setsigmask_np.3, pthread_attr_setstack.3, pthread_attr_setstackaddr.3, pthread_attr_setstacksize.3, pthread_cancel.3, pthread_cleanup_push.3, pthread_cleanup_push_defer_np.3, pthread_create.3, pthread_detach.3, pthread_equal.3, pthread_exit.3, pthread_getattr_default_np.3, pthread_getattr_np.3, pthread_getcpuclockid.3, pthread_join.3, pthread_kill.3, pthread_kill_other_threads_np.3, pthread_mutex_consistent.3, pthread_mutexattr_getpshared.3, pthread_mutexattr_init.3, pthread_mutexattr_setrobust.3, pthread_rwlockattr_setkind_np.3, pthread_self.3, pthread_setaffinity_np.3, pthread_setcancelstate.3, pthread_setconcurrency.3, pthread_setname_np.3, pthread_setschedparam.3, pthread_setschedprio.3, pthread_sigmask.3, pthread_sigqueue.3, pthread_spin_init.3, pthread_spin_lock.3, pthread_testcancel.3, pthread_tryjoin_np.3, pthread_yield.3, ptsname.3, putenv.3, putgrent.3, putpwent.3, puts.3, putwchar.3, qecvt.3, qsort.3, raise.3, rand.3, random.3, random_r.3, rcmd.3, re_comp.3, readdir.3, readdir_r.3, realpath.3, recno.3, regex.3, remainder.3, remove.3, remquo.3, resolver.3, rewinddir.3, rexec.3, rint.3, round.3, rpc.3, rpmatch.3, rtime.3, rtnetlink.3, scalb.3, scalbln.3, scandir.3, scanf.3, sched_getcpu.3, seekdir.3, sem_close.3, sem_destroy.3, sem_getvalue.3, sem_init.3, sem_open.3, sem_post.3, sem_unlink.3, sem_wait.3, setaliasent.3, setbuf.3, setenv.3, setjmp.3, setlocale.3, setlogmask.3, setnetgrent.3, shm_open.3, siginterrupt.3, signbit.3, significand.3, sigpause.3, sigqueue.3, sigset.3, sigsetops.3, sigvec.3, sigwait.3, sin.3, sincos.3, sinh.3, sleep.3, slist.3, sockatmark.3, sqrt.3, stailq.3, statvfs.3, stdarg.3, stdin.3, stdio.3, stdio_ext.3, stpcpy.3, stpncpy.3, strcasecmp.3, strcat.3, strchr.3, strcmp.3, strcoll.3, strcpy.3, strdup.3, strerror.3, strfmon.3, strfromd.3, strfry.3, strftime.3, string.3, strlen.3, strnlen.3, strpbrk.3, strptime.3, strsep.3, strsignal.3, strspn.3, strstr.3, strtod.3, strtoimax.3, strtok.3, strtol.3, strtoul.3, strverscmp.3, strxfrm.3, swab.3, sysconf.3, syslog.3, system.3, sysv_signal.3, tailq.3, tan.3, tanh.3, tcgetpgrp.3, tcgetsid.3, telldir.3, tempnam.3, termios.3, tgamma.3, timegm.3, timeradd.3, tmpfile.3, tmpnam.3, toascii.3, toupper.3, towctrans.3, towlower.3, towupper.3, trunc.3, tsearch.3, ttyname.3, ttyslot.3, tzset.3, ualarm.3, ulimit.3, undocumented.3, ungetwc.3, unlocked_stdio.3, unlockpt.3, updwtmp.3, uselocale.3, usleep.3, wcpcpy.3, wcpncpy.3, wcrtomb.3, wcscasecmp.3, wcscat.3, wcschr.3, wcscmp.3, wcscpy.3, wcscspn.3, wcsdup.3, wcslen.3, wcsncasecmp.3, wcsncat.3, wcsncmp.3, wcsncpy.3, wcsnlen.3, wcsnrtombs.3, wcspbrk.3, wcsrchr.3, wcsrtombs.3, wcsspn.3, wcsstr.3, wcstoimax.3, wcstok.3, wcstombs.3, wcswidth.3, wctob.3, wctomb.3, wctrans.3, wctype.3, wcwidth.3, wmemchr.3, wmemcmp.3, wmemcpy.3, wmemmove.3, wmemset.3, wordexp.3, wprintf.3, xcrypt.3, xdr.3, y0.3, NULL.3const, sysexits.h.3head, aiocb.3type, blkcnt_t.3type, blksize_t.3type, cc_t.3type, clock_t.3type, clockid_t.3type, dev_t.3type, div_t.3type, double_t.3type, epoll_event.3type, fenv_t.3type, id_t.3type, intN_t.3type, intmax_t.3type, intptr_t.3type, iovec.3type, itimerspec.3type, lconv.3type, mode_t.3type, off_t.3type, ptrdiff_t.3type, regex_t.3type, size_t.3type, sockaddr.3type, stat.3type, time_t.3type, timer_t.3type, timespec.3type, timeval.3type, tm.3type, va_list.3type, void.3type, cciss.4, console_codes.4, cpuid.4, dsp56k.4, fd.4, full.4, fuse.4, hd.4, hpsa.4, initrd.4, intro.4, lirc.4, loop.4, lp.4, mem.4, mouse.4, msr.4, null.4, pts.4, ram.4, random.4, rtc.4, sd.4, sk98lin.4, smartpqi.4, st.4, tty.4, ttyS.4, vcs.4, veth.4, wavelan.4, acct.5, charmap.5, core.5, dir_colors.5, elf.5, filesystems.5, ftpusers.5, gai.conf.5, group.5, host.conf.5, hosts.5, hosts.equiv.5, intro.5, issue.5, locale.5, motd.5, networks.5, nologin.5, nscd.conf.5, nss.5, nsswitch.conf.5, passwd.5, proc.5, protocols.5, repertoiremap.5, resolv.conf.5, rpc.5, securetty.5, services.5, shells.5, slabinfo.5, sysfs.5, termcap.5, tmpfs.5, ttytype.5, tzfile.5, utmp.5, intro.6, address_families.7, aio.7, armscii-8.7, arp.7, ascii.7, attributes.7, boot.7, bootparam.7, bpf-helpers.7, capabilities.7, cgroup_namespaces.7, cgroups.7, charsets.7, complex.7, cp1251.7, cp1252.7, cpuset.7, credentials.7, ddp.7, environ.7, epoll.7, fanotify.7, feature_test_macros.7, fifo.7, futex.7, glob.7, hier.7, hostname.7, icmp.7, inode.7, inotify.7, intro.7, ip.7, ipc_namespaces.7, ipv6.7, iso_8859-1.7, iso_8859-10.7, iso_8859-11.7, iso_8859-13.7, iso_8859-14.7, iso_8859-15.7, iso_8859-16.7, iso_8859-2.7, iso_8859-3.7, iso_8859-4.7, iso_8859-5.7, iso_8859-6.7, iso_8859-7.7, iso_8859-8.7, iso_8859-9.7, kernel_lockdown.7, keyrings.7, koi8-r.7, koi8-u.7, landlock.7, libc.7, locale.7, mailaddr.7, man-pages.7, man.7, math_error.7, mount_namespaces.7, mq_overview.7, namespaces.7, netdevice.7, netlink.7, network_namespaces.7, nptl.7, numa.7, operator.7, packet.7, path_resolution.7, persistent-keyring.7, pid_namespaces.7, pipe.7, pkeys.7, posixoptions.7, process-keyring.7, pthreads.7, pty.7, queue.7, random.7, raw.7, regex.7, rtld-audit.7, rtnetlink.7, sched.7, sem_overview.7, session-keyring.7, shm_overview.7, sigevent.7, signal-safety.7, signal.7, sock_diag.7, socket.7, spufs.7, standards.7, suffixes.7, symlink.7, system_data_types.7, sysvipc.7, tcp.7, termio.7, thread-keyring.7, time.7, time_namespaces.7, udp.7, udplite.7, unicode.7, units.7, unix.7, uri.7, user-keyring.7, user-session-keyring.7, user_namespaces.7, utf-8.7, uts_namespaces.7, vdso.7, vsock.7, x25.7, xattr.7, iconvconfig.8, intro.8, ld.so.8, ldconfig.8, nscd.8, sln.8, tzselect.8: tstamp Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-08pivot_root.2: Fix a typo/thinkoŠtěpán Němec1-1/+1
(To obtain a prefix of a given pathname, we have to append (suffix) '/..' at its end.) Signed-off-by: Štěpán Němec <stepnem@smrk.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-10-08memfd_create.2, mlock.2, poll.2, select.2, fopen.3, capabilities.7: tfixŠtěpán Němec4-4/+4
Signed-off-by: Štěpán Němec <stepnem@smrk.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2022-09-18setxattr.2: ffixAlex Colomar1-6/+6
Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-17kcmp.2: EXAMPLES: Make constant string be 'static const'Alex Colomar1-2/+2
Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-17Various pages: EXAMPLES: Align variable declarationsAlex Colomar42-219/+225
Also, move some declarations to the top of functions. Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-15getdents.2: EXAMPLES: Use size_t for an offsetAlex Colomar1-1/+1
Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-15Various pages: EXAMPLES: Use unsigned types for loop iteratorsAlex Colomar10-25/+25
Looping with unsigned types is safer. See the link below. When the iterators are used for accessing an array, use size_t; otherwise, use the most appropriate unsigned type, which in most cases is just 'unsigned int'. Also adjust other variables that have to interact with the iterators, to avoid comparison of integers of different signedness. Link: <https://gustedt.wordpress.com/2013/07/15/a-praise-of-size_t-and-other-unsigned-types/> Cc: Jens Gustedt <jens.gustedt@inria.fr> Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-15semop.2: Fix truncated comment on sempidAlex Colomar1-0/+1
Fixes: bdd915e20f87346dc07b93f8f26386feb92d2c44 Reported-by: GUO Zihua <guozihua@huawei.com> Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-13mount_setattr.2: EXAMPLES: Remove unused includeAlex Colomar1-1/+0
Reported-by: iwyu(1) Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-13getdents.2: EXAMPLES: Sort includesAlex Colomar1-1/+1
Reported-by: clang-tidy(1) Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-13Various pages: EXAMPLES: Use <err.h> functionsAlex Colomar18-160/+113
When reporting errors, prefer using conventional <err.h> functions, rather than home-made macros. Home-made macros are necessary for portable programs, so in documentation about portable functions, keep using the macros. However, in the documentation for functions that are only available in GNU/Linux and/or BSD systems, prefer <err.h>, which is available in both systems. Do the same in example programs documenting portable functions but in which we already require _GNU_SOURCE for some other reason. Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-09Revert "src.mk, All pages: Move man* to man/"Alejandro Colomar500-0/+98300
This reverts commit 70ac1c4785fc1e158ab2349a962dba2526bf4fbc. Link: <https://lore.kernel.org/linux-man/YxcV4h+Xn7cd6+q2@pevik/T/> Reported-by: Petr Vorel <pvorel@suse.cz> Reported-by: Jakub Wilk <jwilk@jwilk.net> Cc: Stefan Puiu <stefan.puiu@gmail.com> Signed-off-by: Alex Colomar <alx.manpages@gmail.com>
2022-09-05src.mk, All pages: Move man* to man/Alejandro Colomar500-98236/+0
The root of the repository is becoming a bit overpopulated and unorganized, due to the recent addition of more mandirs, and more informative and configuration files too. Let's create a specific mandir <man/> that contains the mandirs <man[1-8]*>. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05uselib.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-4/+1
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05sysfs.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-3/+3
Use proc(5) instead. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05setpgid.2: SYNOPSIS: Mark BSD versions of getpgrp() and setpgrp() as ↵Alejandro Colomar1-4/+4
[[deprecated]] The BSD version of getpgrp(2) was superseeded by the POSIX one. The BSD version of setpgrp(2) was superseeded by the POSIX one. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05futimesat.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-2/+2
Use utimensat(2) instead. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05sgetmask.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-7/+2
Use sigprocmask(2) instead. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05tkill.2: SYNOPSIS: Mark tkill() as [[deprecated]]Alejandro Colomar1-1/+1
tkill(2) has been superseeded by tgkill(2). Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05sysctl.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-1/+1
This syscall no longer exists! Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05ustat.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-1/+1
Glibc 2.28 removed the wrapper for this syscall. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05stime.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-1/+1
This syscall was removed from glibc 2.31 for newly linked programs. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05statfs.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-2/+2
LSB deprecated these syscalls in favor of [f]statvfs(3). Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05sigprocmask.2: SYNOPSIS: Mark the legacy system call as [[deprecated]]Alejandro Colomar1-5/+7
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05remap_file_pages.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-2/+3
This syscall was marked as deprecated in Linux 3.16. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05query_module.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-5/+3
This syscall was removed in Linux 2.6. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05iopl.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-1/+1
ioperm(2) is recommended instead. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05getunwind.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-7/+2
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05get_kernel_syms.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-4/+1
This syscall was removed in Linux 2.6. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05create_module.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-4/+1
This syscall was removed in Linux 2.6. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-05bdflush.2: SYNOPSIS: Mark as [[deprecated]]Alejandro Colomar1-5/+2
This syscal is not supported anymore by glibc, and does nothing. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-02ioctl_console.2: document all extant TIOCLINUX subcodes as of 6.0 (2.6.17)наб1-1/+42
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Cc: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-02ioctl_console.2: devices/char/console.c and sel_buffer don't exist anymoreнаб1-2/+1
And haven't for over a decade. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Cc: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-02ioctl_console.2: use symbolic subcodesнаб1-12/+18
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Cc: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-09-01ioctl_console.2: ffixнаб1-11/+11
Separate TIOCLINUX from subcode: they're separate variables Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-30ioctl_ns.2, stat.2: Drop unneeded uintmax_t castsJakub Wilk2-9/+9
major() and minor() return unsigned int, so the typecasts to uintmax_t are not needed. Signed-off-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-25Various pages: Fit rendered pages in 80 columnsAlejandro Colomar1-3/+4
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-25Revert "Many pages: Document fixed-width types with ISO C naming"Alejandro Colomar21-448/+447
This reverts commit 2294974b3a1341e457edb682c08c5f4b2d14675e. Reported-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-24Many pages: Document fixed-width types with ISO C namingman-pages-6.0-rc1Alejandro Colomar21-447/+448
Kernel __u64 and similar types are ABI-compatible, and mostly API-compatible with ISO C types. User-space programmers don't care about kernel details, and should only use libc types. Document syscalls and structures provided by the Linux kernel as if they used libc types. There's work in the kernel to remove this small API incompatibility, which is only for pointers or printf specifiers. Since I couldn't find any structure that uses pointers, there shouldn't be any issues here. Also, the only pointer I found was in a syscall parameter, but since syscall(2) doesn't check its arguments' types, we're also safe there. This patch doesn't go without controversy. Check the discussions in the links below. Found with: $ grep -rn '\b_*[su][8136][624]*\b' man* \ | grep -v -e /bpf-helpers.7 -e /proc.5 -e /epoll_event.3type -e /wcscmp.3 \ -e /crypt.3 -e /mempcpy.3 -e /memcmp.3 -e /string.3 -e /wcsncmp.3 \ -e /wcscasecmp.3 -e /wmemcmp.3 -e /strcasecmp.3 -e /bcmp.3 \ -e /bstring.3 -e /endian.3 -e /strverscmp.3 -e /wcsncasecmp.3 \ -e /strcoll.3 -e /strcmp.3 \ | tee /dev/tty \ | wc -l; Link: <https://lore.kernel.org/linux-man/20210423230609.13519-1-alx.manpages@gmail.com/T/> Link: <https://lore.kernel.org/lkml/YZvIlz7J6vOEY+Xu@yuki/T/> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Nacked-by: Alexei Starovoitov <ast@kernel.org> Nacked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Nacked-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Zack Weinberg <zackw@panix.com> Cc: LKML <linux-kernel@vger.kernel.org> Cc: glibc <libc-alpha@sourceware.org> Cc: GCC <gcc-patches@gcc.gnu.org> Cc: bpf <bpf@vger.kernel.org> Cc: LTP List <ltp@lists.linux.it> Cc: Linux API <linux-api@vger.kernel.org> Cc: linux-arch <linux-arch@vger.kernel.org> Cc: David Laight <David.Laight@ACULAB.COM> Cc: Joseph Myers <joseph@codesourcery.com> Cc: Florian Weimer <fweimer@redhat.com> Cc: Daniel Borkmann <daniel@iogearbox.net> Cc: Cyril Hrubis <chrubis@suse.cz> Cc: David Howells <dhowells@redhat.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Florian Weimer <fweimer@redhat.com> Cc: Rich Felker <dalias@libc.org> Cc: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2022-08-24utime.2, utimensat.2: explicitly mention ctime changing.NeilBrown2-0/+5
utime and related calls always change the ctime. It is worth making this explicit. This is clear from the code (vfs_utimes() in fs/utimes.c always sets ATTR_CTIME) and is documented in <https://pubs.opengroup.org/onlinepubs/007904875/functions/utimes.html> Signed-off-by: NeilBrown <neilb@suse.de> Reviewed-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-21All pages: Remove the 5th argument to .THAlejandro Colomar271-271/+271
Now that we have the LIBRARY section, and a 4th argument that already tells that it's a page from the Linux man-pages project, the 5th argument isn't telling any information that the default value wouldn't. So let's just remove it. Scripted change: $ find man* -type f \ | xargs sed -Ei '/^.TH /s/(.TH +[^ ]+ +[^ ]+ +[^ ]+ +"[^"]+") .*/\1/' Acked-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Cc: Ingo Schwarze <schwarze@openbsd.de> Cc: Michael Kerrisk <mtk.manpages@gmail.com>
2022-08-21All pages: Replace the 4th argument to .TH by "Linux man-pages (unreleased)"Alejandro Colomar275-275/+275
On 8/20/22 13:57, Alejandro Colomar wrote: > On 8/20/22 07:43, G. Branden Robinson wrote: >> >> In my opinion it would benefit readers of the Linux man-pages if the >> fourth argument to `TH` were what it is in many other man pages: an >> identifier for the name and version number of the release originating >> them. In every page it would be clear what version of the man-pages was >> being viewed. Little sophistication would be demanded of the user to >> check the Web to determine the relative age of the pages, independently >> of the modification date of the particular page. Such usage would be >> congruent with the argument's purpose in AT&T and BSD Unix, where this >> datum was "7th Edition", "System III", or "4.2 Berkeley Distribution", >> or similar. > > I thought about it in the past... That field was the only thing that > said where a function came from. If we removed GNU (or something else), > how would someone know where does the function or whatever comes from?? > > I guess that's also why the colophon was appended to the pages by > Michael. Since we couldn't use the 4th field for that, we had to have a > COLOPHON section. > > However, the addition of the LIBRARY section seems to fix this issue, > and so now we have an even more precise way to determine where a given > function comes from (including the library file name, and the linker > option). > > This gives me another argument for those who don't like to have a > LIBRARY section for libc stuff (since -lc is unnecessary), and consider > it noise. > >> >> Further, as the libc-related man pages in this project expand coverage >> to other libcs than GNU's, the alternatives to the empty string >> proferred in man-pages(7) seem less and less appropriate. > > Agree. LIBRARY seems much more appropriate for that purpose. > > And this helps remove the COLOPHON section (or at least, we don't need > to autogenerate it, since the version number now comes in .TH, and the > COLOPHON is static; so I can even move it to a smaller REPORTING BUGS > section). Scripted change: $ find man* -type f \ |xargs sed -Ei '/^.TH /s/(.TH +[^ ]+ +[^ ]+ +[^ ]+) +"[^"]*"/\1 "Linux man-pages (unreleased)"/' $ find man* -type f \ |xargs sed -Ei '/^.TH /s/(.TH +[^ ]+ +[^ ]+ +[^ ]+) +[^" ]+/\1 "Linux man-pages (unreleased)"/' $ git restore man5/tzfile.5 $ git restore man8/zdump.8 $ git restore man8/zic.8 $ git restore man7/bpf-helpers.7 Link: <https://lore.kernel.org/linux-man/20220819180323.dbsgxh5qvcjabjm6@jwilk.net/T/#u> Reported-by: Jakub Wilk <jwilk@jwilk.net> Reported-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Cc: Ingo Schwarze <schwarze@openbsd.de> Cc: Michael Kerrisk <mtk.manpages@gmail.com>
2022-08-21fanotify_init.2: srcfixAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-21fanotify_init.2: tfixJakub Wilk1-2/+2
Signed-off-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-20memfd_secret.2: tfixJakub Wilk1-1/+1
Signed-off-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-20landlock_restrict_self.2: tfixJakub Wilk1-1/+1
Signed-off-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-15futex.2, futex.7: {ftp://ftp => https://mirrors}.kernel.orgнаб1-1/+1
The former doesn't exist; the latter is the new location with seemingly compatible data Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-15mount.2: tfixAlejandro Colomar1-1/+1
Reported-by: glibg10b <pugonfireyt@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-15poll.2: tfixŠtěpán Němec1-2/+2
Fixes: 0bdda5d08e82 ("poll.2: Note that poll() equivalent code for ppoll() is not quite equivalent") Signed-off-by: Štěpán Němec <stepnem@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-02fanotify_init.2, mount_setattr.2: ffixAlejandro Colomar2-2/+0
mandoc: man2/fanotify_init.2:332:2: WARNING: skipping paragraph macro: PP empty mandoc: man2/mount_setattr.2:677:2: WARNING: skipping paragraph macro: PP empty Reported-by: 'make lint-man' Reported-by: mandoc(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-02ioctl_userfaultfd.2, fanotify.7: ffixAlejandro Colomar1-1/+1
Reported-by: 'make lint-man' Reported-by: groff(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01membarrier.2: ffixAlejandro Colomar1-4/+9
Format the table using tbl(1), to fix the following warnings. an.tmac:man2/membarrier.2:222: style: 23 leading space(s) on input line an.tmac:man2/membarrier.2:223: style: 7 leading space(s) on input line an.tmac:man2/membarrier.2:224: style: 7 leading space(s) on input line an.tmac:man2/membarrier.2:225: style: 7 leading space(s) on input line Reported-by: 'make lint-man' Reported-by: groff(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01getrlimit.2: srcfixAlejandro Colomar1-12/+18
an.tmac:man2/getrlimit.2:246: style: 4 leading space(s) on input line Reported-by: 'make lint-man' Reported-by: groff(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01getrlimit.2: Use MIN(3)Alejandro Colomar1-1/+1
min() doesn't exist, but MIN(3) exists. Use it. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01chown.2: srcfixAlejandro Colomar1-3/+3
Reported-by: 'make lint-man' Reported-by: groff(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01timer_settime.2, timerfd_create.2, itimerspec.3type: Document itimerspec in ↵Alejandro Colomar2-23/+4
a new page Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01ioctl_ns.2: EXAMPLES: Add missing includeAlejandro Colomar1-6/+1
Instead of redefining stuff, add the necessary header. Reported-by: 'make lint-c' Reported-by: iwyu(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01bind.2, process_vm_readv.2: EXAMPLES: Add necessary includes and ftm(7)Alejandro Colomar2-0/+2
Reported-by: 'make lint-c' Reported-by: clang(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01Various pages: EXAMPLES: tfixAlejandro Colomar5-22/+22
Use escape sequences that produce the correct output, suitable for copy&paste into real C programs. Reported-by: 'make lint-c' Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01poll.2: tfixŠtěpán Němec1-1/+1
Signed-off-by: Štěpán Němec <stepnem@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01sigaction.2: tfixŠtěpán Němec1-1/+1
Signed-off-by: Štěpán Němec <stepnem@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01syslog.2: tfixŠtěpán Němec1-1/+1
Signed-off-by: Štěpán Němec <stepnem@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01mremap.2: wfixŠtěpán Němec1-1/+1
Signed-off-by: Štěpán Němec <stepnem@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-01getrlimit.2: tfixŠtěpán Němec1-2/+2
Signed-off-by: Štěpán Němec <stepnem@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-07-29getrlimit.2: RLIMIT_NPROC also ignored for ruid 0Robert Schneider1-1/+2
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-07-29Many pages: Use STANDARDS instead of CONFORMING TOAlejandro Colomar266-266/+266
STANDARDS seems to be much more extended than CONFORMING TO. For consistency across the whole manual pages corpus, let's try to unify, by following the most commonly used section name. On 7/27/22 12:49, Ingo Schwarze wrote: > Alejandro Colomar wrote on Tue, Jul 26, 2022 at 02:02:56PM +0200: > > We use CONFORMING TO in Linux. Don't know why; just history, I guess. > > See man-pages(7). > > Weird. > > I failed to find a single instance of "CONFORMING TO" in AT&T UNIX > (including v6, PWB, v7, 32v, v8, v10, System III, SVR1, SVR2) nor in > any version of UCB CSRG BSD. So considering that System V and BSD are > widely considered the two main original branches of the development > of Unix-like operating systems and Linux is often considered to have > drawn inspiration from both, the section name "CONFORMING TO" does > not appear to be a UNIX thing. For example, Aeleen Frisch, "Essential > System Administration", O'Reilly, Cambridge 1995, considers Linux > as slightly more influenced by 4.3BSD than by System V Release 3. > > STANDARDS, on the other hand, is present since 4.3BSD-Reno (June 1990). > > 4.3BSD-Reno predates the first version of the Linux kernel by more than > a year, and the first Linux manual pages probably for longer than that. > > So i have no idea where "CONFORMING TO" may have come from. Scripted change: $ find man* -type f | xargs sed -i 's/CONFORMING TO/STANDARDS/' plus a few manual fixes to the following files: - man2/getrlimit.2 - man3/syslog.3 - scripts/bash_aliases Reported-by: Ingo Schwarze <schwarze@openbsd.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-07-29getsid.2: deduplicate getsid(0) caseнаб1-2/+0
The first sentence in getsid(0) returns the session ID of the calling process. getsid() returns the session ID of the process with process ID pid. If pid is 0, getsid() returns the session ID of the calling process. blames to beginning of git, duplicates the third one, and doesn't stylistically match current formatting Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-07-21Many pages: Use man3type/ and man2type/ for type pagesAlejandro Colomar1-51/+0
Quoting Ingo: [ The mandoc(1) program is also able to handle paths like "man3/id_t.3type". It will consider that page to be *both* in section "3" (as specified by the directory name) and in section "3type" (as specified by the file name and by the .TH macro). I would consider it better style to keep section names consistent, i.e. to use either "man3/id_t.3" .TH id_t 3 or "man3type/id_t.3type" .TH id_t 3type, but it's not a big deal: since many systems (in particular various Linux distros) suffer from such inconsistencies, handling such inconsistencies gracefully is an important feature that certainly won't get removed. ] Let's be nice, and do things right here, in the hope that others may follow the example. === Most of this patch has been scripted: $ mkdir man2type man3type $ find man2 | grep type$ | while read f; do mv -t man2type $f; done $ find man3 | grep type$ | while read f; do mv -t man3type $f; done $ grep -rl man3/.*type man* | xargs sed -i 's,man3/,man3type/,' Apart from that, I adapted the Makefiles, and moved va_list into the man3type subsection (it was accidentally placed in the main 3 section). Link: <https://lore.kernel.org/linux-man/YrB66rgFZqryrmpt@asta-kit.de/T/#u> Reported-by: Ingo Schwarze <schwarze@usta.de> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-07-18bind.2: EXAMPLES: Add cleanup codeAlejandro Colomar1-2/+5
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-07-07statx.2: correctly document STATX_ALLEric Biggers1-1/+2
Since kernel commit 581701b7efd6 ("uapi: deprecate STATX_ALL"), STATX_ALL is deprecated. It doesn't include STATX_MNT_ID, and it won't include any future flags. Update the man page accordingly. Signed-off-by: Eric Biggers <ebiggers@google.com> Reviewed-by: Andreas Dilger <adilger@dilger.ca> Reviewed-by: Darrick J. Wong <djwong@kernel.org> [alx: wfix, ffix] Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-07-04fanotify.7, fanotify_init.2, fanotify_mark.2: Document FAN_RENAMEAmir Goldstein2-6/+42
FAN_RENAME is a new event type that includes information about both old and new directory entries. It is a successor of the two separate FAN_MOVED_TO/FROM events, but those event types are still supported. Reviewed-by: Matthew Bobrowski <repnop@google.com> Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-07-04fanotify.7, fanotify_init.2: Document FAN_REPORT_TARGET_FIDAmir Goldstein2-3/+55
FAN_REPORT_TARGET_FID adds an information record about the child to directory entry modification events (create/delete/move). This flag also adds sanity checks that directory modification events (create,delete,moved) cannot be set in mask of a non-dir inode mark. Note that while FAN_REPORT_TARGET_FID was merged to v5.17, the sanity checks resulting in ENOTDIR were merged as fix commits ceaf69f8eadc ("fanotify: do not allow setting dirent events in mask of non-dir") and 8698e3bab4dd ("fanotify: refine the validation checks on non-dir inode mask") in later kernel releases. Reviewed-by: Matthew Bobrowski <repnop@google.com> Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Amir Goldstein <amir73il@gmail.com> [alx: ffix] Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-20epoll_ctl.2, epoll_wait.2: Defer definition of epoll_event to epoll_event(3type)Alejandro Colomar2-34/+4
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-17fanotify.7, fanotify_mark.2: Document FAN_FS_ERRORGabriel Krisman Bertazi1-0/+30
FAN_FS_ERROR is a new event for fanotify to report filesystem errors that might lead to some corruption. This documents how to use the feature and specific caveats. Reviewed-by: Jan Kara <jack@suse.cz> Reviewed-by: Amir Goldstein <amir73il@gmail.com> Reviewed-by: Matthew Bobrowski <repnop@google.com> Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-17process_madvise.2: wfixAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-17Various pages: Defer definition of iovec to iovec(3type)Alejandro Colomar6-71/+10
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-16openat2.2, open_how.2type, Makefile: Add new page documenting 'struct open_how'Alejandro Colomar2-13/+60
Simplify openat2(2) a little bit, but without removing information that is crucial to openat2(2). Adapt the Makefile to accept the 2type section. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-15uname.2: deweirdifyнаб1-37/+12
The NOTES were not only weirdly reductionist, but also highly opinionated in the wrong direction. Yes, it's a syscall in SysIII; not in 4.4BSD. Well, in general, it exists in 4.4BSD for obvious conformace reasons. No, it doesn't "know" (and if it does, that's not relevant), historically and practically this is the broad CPU/machine type (compare uname -p on SysVr4 (=> SunOS 5 => NetBSD), which is the actual CPU model (usually)). Everywhere, ex. def., the nodename is what the BSD calls the hostname. "No standard" also speaks of sethostname(), so. Historical precedent (i.e. all implementations, save *maybe* for weirdo XENIX, who cares about weirdo XENIX) defines the hostname to be uname -n (indeed, SVr3 uname -S sets /both/ nodename /and/ sysname! that's not relevant here; SunOS gets it from the network (unless configured manually)). Someone clearly cited SysVr4's "Internet hostnames" comment w/o credit; fix that. 8-byte truncation is really quite secondary here (indeed, that's what SysVr4 does for pre-SysVr4 uname() callers that haven't been rebuilt. you will never encounter it). The hostname is not meaningless, obviously?? Also fix machine to say "hardware type", like the standard; "hardware identifier" would be hostid. I wrote six seething pages about hostid, and machine is /not/ hostid. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-15uname.2: fix standard reference wordingнаб1-5/+6
Issue 6: IEEE Std 1003.1-2001/Cor 2-2004, item XBD/TC2/D6/27 is applied, changing the description of nodename within the utsname structure from ``an implementation-defined communications network'' to ``the communications network to which this node is attached, if any''. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-15Many pages: Move type pages to subsection 3typeAlejandro Colomar1-2/+2
These pages are not exactly what man3 typically contains, which is library functions. Instead, types fit better in a subsection of man3, and some UNIX systems have already a section 3type, so let's use the same name. Adapt the Makefile to work with this subsection. Except for the Makefile, these changes are scripted. Scripted changes: $ find man3 -type f \ | grep '_t\.3$' \ | while read f; do mv $f ${f}type; done; $ find man? -type f \ | xargs grep -l '^\.so.*_t\.3' \ | xargs sed -i '/^\.so/s/\.3$/\.3type/'; $ find man? -type f \ | xargs grep -l '^\.BR .*_t (3)' \ | xargs sed -i '/^\.BR .*_t (3)/s/3)/3type)/'; $ find man? -type f \ | grep -- '-struct\.[23]$' \ | while read f; do g="$(echo $f | sed 's/-struct//')"type; mv $f $g; done; $ find man? -type f \ | xargs grep -l '^\.so.*-struct\.[23]' \ | xargs sed -i -e '/^\.so/s/-struct//' -e '/^\.so/s/$/type/'; $ find man? -type f \ | xargs grep -l '^\.BR .*-struct (.)' \ | xargs sed -i -e '/^\.BR .*-struct (.)/s/\([23]\)/\1type/' \ -e '/^\.BR .*-struct /s/-struct//'; $ find man? -type f \ | grep -- '-union\.[23]$' \ | while read f; do g="$(echo $f | sed 's/-union//')"type; mv $f $g; done; $ find man? -type f \ | grep '3type' \ | xargs sed -i '/^\.TH/s/ 3 / 3type /'; Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-15userfaultfd.2: Minor tweaks to Peter's patchesAlejandro Colomar1-7/+8
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Cc: Peter Xu <peterx@redhat.com>
2022-06-15userfaultfd.2: Update on write-protection supportPeter Xu1-3/+6
The shmem/hugetlbfs memory types are supported for write-protection messages very lately. Update the man page to reflect that. Signed-off-by: Peter Xu <peterx@redhat.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-15userfaultfd.2: Add section for UFFD_USER_MODE_ONLYPeter Xu1-2/+12
Add a paragraph for UFFD_USER_MODE_ONLY flag that was introduced in Linux 5.11. Signed-off-by: Peter Xu <peterx@redhat.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-10madvise.2: Clarify addr/length and update hugetlb supportMike Kravetz1-9/+23
Clarify that madvise only works on full pages, and remove references to 'bytes'. Update MADV_DONTNEED and MADV_REMOVE sections to remove notes that HugeTLB mappings are not supported. Indicate the releases when they were first supported as well as alignment restrictions. Signed-off-by: Mike Kravetz <mike.kravetz@oracle.com> Acked-by: Peter Xu <peterx@redhat.com> [alx: wsfix] Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-09statx.2: Add #define _GNU_SOURCE to synopsisJakub Wilk1-10/+1
The original text hinted that you need _GNU_SOURCE only for a few of the AT_* constants; but actually you need it to get the statx() declaration. [alx:] You can check yourself: $ grepc -tfp statx ./io/bits/statx-generic.h:60: int statx (int __dirfd, const char *__restrict __path, int __flags, unsigned int __mask, struct statx *__restrict __buf) __THROW __nonnull ((2, 5)); $ grep -rnC1 '<bits/statx-generic.h>' io/ io/bits/statx-generic.h-21-#ifndef _SYS_STAT_H io/bits/statx-generic.h:22:# error Never include <bits/statx-generic.h> directly, include <sys/stat.h> instead. io/bits/statx-generic.h-23-#endif -- io/bits/statx.h-25-/* Use the generic definitions. */ io/bits/statx.h:26:#include <bits/statx-generic.h> $ grep -rnC1 '<bits/statx.h>' io/ io/bits/statx.h-21-#ifndef _SYS_STAT_H io/bits/statx.h:22:# error Never include <bits/statx.h> directly, include <sys/stat.h> instead. io/bits/statx.h-23-#endif -- io/sys/stat.h-371-#ifdef __USE_GNU io/sys/stat.h:372:# include <bits/statx.h> io/sys/stat.h-373-#endif Signed-off-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-08mount_setattr.2: Minor tweaks to Christian's patch setAlejandro Colomar1-6/+6
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-08mount_setattr.2: ffixChristian Brauner1-1/+1
Fix a typo in my name. Signed-off-by: Christian Brauner (Microsoft) <brauner@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-08mount_setattr.2: update list of supported filesystemsChristian Brauner1-7/+36
Update list of filesystems that support ID-mapped mounts. Signed-off-by: Christian Brauner (Microsoft) <brauner@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-08mount_setattr.2: update conditions to create ID-mapped mountsChristian Brauner1-4/+5
Newer kernels in principle support the creation of ID-mapped mounts for filesystems mountable in non-initial user namespaces. Currently, no such filesystem has been ported to support this though. But we should nonetheless update the conditions. Signed-off-by: Christian Brauner (Microsoft) <brauner@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-08mount_setattr.2: add and explain missing EBUSY errorChristian Brauner1-0/+10
In order to ID-map a mount it must not have any writers. If the mount has writers and the caller tries to ID-map the mount EBUSY will be returned. Signed-off-by: Christian Brauner (Microsoft) <brauner@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-08pipe.2: Add mention of O_NOTIFICATION_PIPE flagCyril Hrubis1-0/+18
This adds very basic information about the notification pipe that have been added into Linux 5.8. There is some description about the interface at: https://www.kernel.org/doc/html/latest/core-api/watch_queue.html (I think that there is at least on bug in that page, since the notification pipe has to be opened with O_NOTIFICATION_PIPE which is defined to O_EXCL not O_TMPFILE) The ENOPKG error should be clear from this header (see watch_queue_init() at the end): https://github.com/torvalds/linux/blob/5bfc75d92efd494db37f5c4c173d3639d4772966/include/linux/watch_queue.h Signed-off-by: Cyril Hrubis <chrubis@suse.cz> Cc: David Howells <dhowells@redhat.com> [alx: wsfix] Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-06poll.2: Set fd to its bitwise complement to ignoreDavid Ward1-3/+2
A valid file descriptor will be non-negative, i.e., 0 <= fd <= INT_MAX. When all of the bits of a valid file descriptor are flipped, the result is a negative value: ~0 = -1, ~1 = -2, ..., ~INT_MAX = INT_MIN. If all of these bits are flipped again, then the file descriptor is recovered. Negating the file descriptor does not quite achieve this, because there will be no change for fd 0. (Likewise, negating INT_MIN would not cause any change in value, but it is never a valid file descriptor.) Link: https://bugzilla.kernel.org/show_bug.cgi?id=79411 Signed-off-by: David Ward <david.ward@gatech.edu> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-06-03mmap.2: wfixman-pages-5.19-rc1Jesse Rosenstock1-3/+4
Change "supported only since" to "support was added in". Previously, this said, "MAP_POPULATE is supported for private mappings only since Linux 2.6.23." This could be parsed as "MAP_POPULATE is supported for private mappings only [not shared mappings] since Linux 2.6.23." Someone (a native English speaker) tried to tell me this. Change to "Support for MAP_POPULATE in conjunction with private mappings was added in Linux 2.6.23." This is unambiguous, and "support was added" is more common in other man pages. There are more instances of "supported only since", but they seem clearer. I could send a separate patch for them if desired. Signed-off-by: Jesse Rosenstock <jmr@google.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-25execve.2: point to exec(3) earlyнаб1-0/+8
Most people actually want exec(3) (or one of its aliases); the minutiae are a separate, rarer, concern, and execve(2) hijacks man execve from all the other exec(3) aliases (similarly to exec(1posix), but it's at least obvious in that case that you got the wrong page) Reported-in: https://twitter.com/NireBryce/status/1529538043039850499 Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-24fanotify: Document FAN_REPORT_PIDFD FeatureMatthew Bobrowski1-0/+36
Update the fanotify API documentation to include details on the new FAN_REPORT_PIDFD feature. This patch also includes a generic section describing the concept of information records which are supported by the fanotify API. Signed-off-by: Matthew Bobrowski <repnop@google.com> Reviewed-by: Jan Kara <jack@suse.cz> Reviewed-by: Amir Goldstein <amir73il@gmail.com> [alx: wsfix, ffix] Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-14getpriority.2: Minor tweaks to Theodore's patchAlejandro Colomar1-3/+6
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-14getpriority: Only getpriority translates the priority valuesTheodore Dubois1-13/+4
The translation is needed to avoid returning a negative number from a successful syscall, and this requirement doesn't apply to setpriority. See the implementation of getpriority in kernel/sys.c. Signed-off-by: Theodore Dubois <tbodt@google.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-14signal.2: tfixAndrew Persons1-1/+1
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-03userfaultfd.2: EXAMPLES: Use __func__Alejandro Colomar1-3/+4
Instead of hardcoding the function name, use %s and __func__, which is standard ISO C. Reported-by: checkpatch(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-03timerfd_create.2: EXAMPLES: Remove unnecessary parenthesesAlejandro Colomar1-1/+1
Reported-by: checkpatch(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-03seccomp_unotify.2, sysctl.2: EXAMPLES: Use ARRAY_SIZE() instead of sizeof ↵Alejandro Colomar2-2/+6
division Using sizeof divisions manually is bad style. Use ARRAY_SIZE(arr) to promote good style. Reported-by: checkpatch(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-03kcmp.2: EXAMPLES: Use octal permissions instead of S_I* macrosAlejandro Colomar1-2/+2
Octal is much more readable. Reported-by: checkpatch(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-03execve.2: EXAMPLES: Add 'static'Alejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-03Various pages: EXAMPLES: Separate declarations from codeAlejandro Colomar6-36/+52
Reported-by: checkpatch(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-03Various pages: EXAMPLES: ffixAlejandro Colomar23-84/+93
Mostly reported by checkpatch(1). Fixed according to a mix of the NGINX, git, and kernel coding styles. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-03listxattr.2, msgop.2: EXAMPLES: ffixAlejandro Colomar2-4/+6
If an else has a brace on one side, it should have it on both. Reported-by: cpplint(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-03ioctl_fat.2, select_tut.2, sysctl.2: wsfixAlejandro Colomar3-3/+3
Reported-by: cpplint(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-02copy_file_range.2: Update cross-filesystem support for 5.12Alejandro Colomar1-4/+23
Linux 5.12 fixes a regression. Cross-filesystem (introduced in 5.3) copies were buggy. Move the statements documenting cross-fs to BUGS. Kernels 5.3..5.11 should be patched soon. State version information for some errors related to this. Reported-by: Luis Henriques <lhenriques@suse.de> Reported-by: Amir Goldstein <amir73il@gmail.com> Related: <https://lwn.net/Articles/846403/> Cc: Greg KH <gregkh@linuxfoundation.org> Cc: Michael Kerrisk <mtk.manpages@gmail.com> Cc: Anna Schumaker <anna.schumaker@netapp.com> Cc: Jeff Layton <jlayton@kernel.org> Cc: Steve French <sfrench@samba.org> Cc: Miklos Szeredi <miklos@szeredi.hu> Cc: Trond Myklebust <trond.myklebust@hammerspace.com> Cc: Alexander Viro <viro@zeniv.linux.org.uk> Cc: "Darrick J. Wong" <darrick.wong@oracle.com> Cc: Dave Chinner <dchinner@redhat.com> Cc: Nicolas Boichat <drinkcat@chromium.org> Cc: Ian Lance Taylor <iant@google.com> Cc: Luis Lozano <llozano@chromium.org> Cc: Andreas Dilger <adilger@dilger.ca> Cc: Olga Kornievskaia <aglo@umich.edu> Cc: Christoph Hellwig <hch@infradead.org> Cc: ceph-devel <ceph-devel@vger.kernel.org> Cc: linux-kernel <linux-kernel@vger.kernel.org> Cc: CIFS <linux-cifs@vger.kernel.org> Cc: samba-technical <samba-technical@lists.samba.org> Cc: linux-fsdevel <linux-fsdevel@vger.kernel.org> Cc: Linux NFS Mailing List <linux-nfs@vger.kernel.org> Cc: Walter Harms <wharms@bfs.de> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-02process_vm_readv.2: EXAMPLES: Use exit(3) instead of returnAlejandro Colomar1-3/+3
For consistency. Also, remove unnecessary else. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-02Various pages: EXAMPLES: Fix includesAlejandro Colomar6-8/+25
Reported-by: iwyu(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-02clone.2, pivot_root.2: EXAMPLES: Add #include <signal.h>Alejandro Colomar2-9/+11
To provide SIGCHLD. Reported-by: iwyu(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-02keyctl.2: EXAMPLES: Parenthesize macro definitionAlejandro Colomar1-1/+1
Reported-by: clang-tidy(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-02Various pages: EXAMPLES: Remove unused includesAlejandro Colomar23-83/+46
Reported-by: iwyu(1) Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-02Various pages: EXAMPLES: Use SYS_xxx syscall macros instead of __NR_xxxAlejandro Colomar6-27/+18
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-02Various pages: EXAMPLES: sort includes alphabeticallyAlejandro Colomar17-49/+50
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-01spu_run.2: Use syscall(SYS_...) for system calls without a wrapperAlejandro Colomar1-3/+4
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-01seccomp.2: EXAMPLES: Fix signednessAlejandro Colomar1-2/+2
AUDIT_ARCH_X86_64 is an unsigned integer. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-01memfd_create.2: EXAMPLES: Remove unused variableAlejandro Colomar1-1/+0
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-01getdents.2, sysctl.2: EXAMPLES: Fix bugs related to printf(3)Alejandro Colomar2-2/+2
The first argument to %*s must be an int. Use %ld for long. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-05-01Various pages: EXAMPLES: Fix usage of argc and argvAlejandro Colomar8-7/+13
If they are unused, use the more appropriate signature: int main(void); If they are used, check that the number of arguments is correct. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-04-30Many pages: EXAMPLES: Add wrapper comments SRC BEGIN and SRC ENDAlejandro Colomar57-2/+130
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-04-30fork.2: EXAMPLES: Sort includesAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-04-30membarrier.2: EXAMPLES: Add wrapper comments SRC BEGIN and SRC ENDAlejandro Colomar1-0/+2
This is used by the Makefile to extract the example program. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-04-25bpf.2: Note that unused fields and padding in bpf_attr must be zeroJakub Sitnicki1-0/+1
In a discussion regarding a potential backward incompatible change [1], Andrii Nakryiko points out that unused bytes of bpf_attr should be zero. Add this bit of information to the bpf(2) man page. [1] https://lore.kernel.org/bpf/CAEf4BzbT4vQBnZzdD00SuPCDkeb4Cm=F6PLUoO_3X93UQD5hbQ@mail.gmail.com/ Signed-off-by: Jakub Sitnicki <jakub@cloudflare.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-04-25umask.2: S_I* are Bнаб1-4/+4
This is more consistent with the other pages and, more importantly, fixes the atrocious "I[S_IWGRP] I[|] I[S_IWOTH]" highlighting in the first hunk Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-04-25ioctl_userfaultfd.2, userfaultfd.2: Minor tweaks to Axel's patchAlejandro Colomar2-4/+5
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-04-25ioctl_userfaultfd.2, userfaultfd.2: add minor fault modeAxel Rasmussen2-22/+215
Userfaultfd minor fault mode is supported starting from Linux 5.13. This commit adds a description of the new mode, as well as the new ioctl used to resolve such faults. The two go hand-in-hand: one can't resolve a minor fault without continue, and continue can't be used to resolve any other kind of fault. v1->v2: - Some spelling / phrasing improvements v2->v3: - Improved line wrapping in man2/ioctl_userfaultfd.2 v3->v4: - Rebased onto http://www.alejandro-colomar.es/src/alx/linux/man-pages/man-pages.git/ main - Mentioned minor fault shmem support - Improved line wrapping in man2/userfaultfd.2 Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: Axel Rasmussen <axelrasmussen@google.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-04-14timerfd_create.2: tfixнаб1-1/+1
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-03-30fork.2: EXAMPLES: Add simple example using fork(2) without wait(2)Alejandro Colomar1-1/+36
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-03-22ioctl_userfaultfd.2: Corrections for returned .ioctls membersIan Abbott1-7/+20
Support for the `UFFDIO_WRITEPROTECT` operation is not indicated in the `ioctls` member of `struct uffdio_api`. It is indicated in the `ioctls` member of `struct uffdio_register` along with indications of support for the `UFFDIO_COPY`, `UFFDIO_WAKE` and `UFFDIO_ZEROPAGE` operations (and also the `UFFDIO_CONTINUE` operation supported since Linux 5.13 but that is not documented by this man page yet.) Fixes: f559fa36a678 ("ioctl_userfaultfd.2: Add write-protect mode docs") Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Acked-by: Peter Xu <peterx@redhat.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-03-21membarrier.2: EXAMPLES: Remove unused parameters to main()Alejandro Colomar1-1/+1
`int main(void)` is a valid signature for main(). Since we're not using any of its parameters, use that. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-03-20Many pages: Fix style issues reported by `make lint-mandoc`Alejandro Colomar9-11/+17
Plus some other found in the process. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-03-20Many pages: Fix style issues reported by `make lint-groff`Alejandro Colomar180-1772/+1927
Plus some other found in the process. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-03-20ioctl_tty.2: ffixAlejandro Colomar1-35/+35
Use \~ for the space between a type and the '*' pointer symbol. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-03-17madvise.2: update EINVAL return infoCharan Teja Reddy1-0/+10
MADV_COLD and MADV_PAGEOUT advises on an address range which includes locked, Huge TLB pages or VM_PFNMAP pages can return EINVAL. Update the man pages accordingly. Reported-by: Nadav Amit <nadav.amit@gmail.com> Signed-off-by: Charan Teja Reddy <quic_charante@quicinc.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>