aboutsummaryrefslogtreecommitdiffstats
path: root/man2
AgeCommit message (Collapse)AuthorFilesLines
2022-02-25setresuid.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25setreuid.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25setsid.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25set_thread_area.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25set_tid_address.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25setuid.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25setup.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25setxattr.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25shmctl.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25shmget.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25shmop.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25shutdown.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25sigaltstack.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25signal.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25signalfd.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25sigpending.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25sigreturn.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25sigsuspend.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25sigwaitinfo.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25socketcall.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25socketpair.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25splice.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25spu_create.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25spu_run.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25stat.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25statx.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25subpage_prot.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25swapon.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25symlink.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25sync.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25sync_file_range.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25syscall.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25sysinfo.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25syslog.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25tee.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25time.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25timer_create.2: Add LIBRARY sectionAlejandro Colomar1-2/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25timer_delete.2: Add LIBRARY sectionAlejandro Colomar1-2/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25timerfd_create.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25timer_getoverrun.2: Add LIBRARY sectionAlejandro Colomar1-2/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25truncate.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25umask.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25unlink.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25tkill.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25umount.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25uname.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25unshare.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25userfaultfd.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25ustat.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25utime.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25utimensat.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25vfork.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25vhangup.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25vm86.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25vmsplice.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25wait.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25wait4.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25write.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25request_key.2: Add LIBRARY sectionAlejandro Colomar1-14/+4
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25keyctl.2: Add LIBRARY sectionAlejandro Colomar1-2/+7
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25_exit.2: Add LIBRARY sectionAlejandro Colomar1-0/+3
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25getxattr.2, listxattr.2, removexattr.2, setxattr.2: Don't specify font familyAlejandro Colomar4-8/+0
We don't in other pages, so why should we specify it here? Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25Various pages: [Linux-man-pages-copyleft] Use SPDX-License-IdentifierAlejandro Colomar177-3717/+177
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25Various pages: [GPL-2.0-only] Use SPDX-License-IdentifierAlejandro Colomar2-6/+2
$ find man? -type f \ | xargs sed -i '/%%%LICENSE_START(GPLv2/,/%%%LICENSE_END/c\.\\" SPDX-License-Identifier: GPL-2.0-only' Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25Various pages: [GPL-2.0-or-later] Use SPDX-License-IdentifierAlejandro Colomar52-959/+52
$ find man? -type f \ | xargs sed -i '/%%%LICENSE_START(GPLv2+/,/%%%LICENSE_END/c\.\\" SPDX-License-Identifier: GPL-2.0-or-later' Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25Various pages: [GPL-1.0-or-later] Use SPDX-License-IdentifierAlejandro Colomar15-47/+15
$ find man? -type f \ | xargs sed -i '/%%%LICENSE_START(GPL_NOVERSION_ONELINE/,/%%%LICENSE_END/c\.\\" SPDX-License-Identifier: GPL-1.0-or-later' Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-25Various pages: [BSD-4-Clause-UC] Use SPDX-License-IdentifierAlejandro Colomar20-580/+20
$ find man? -type f \ | xargs sed -i '/%%%LICENSE_START(BSD_4_CLAUSE_UCB/,/%%%LICENSE_END/c\.\\" SPDX-License-Identifier: BSD-4-Clause-UC' Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-24select.2, system_data_types.7: Move fd_set to select.2Alejandro Colomar1-1/+19
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-02-24stat.2, system_data_types.7: Document 'struct stat' in system_data_types(7)Alejandro Colomar1-140/+3
Move the definition of the struct present in stat(2), and put there a reference to stat-struct(3) instead. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Cc: G. Branden Robinson <g.branden.robinson@gmail.com>
2022-02-01fsync.2: ERRORS: Document EINTRAlejandro Colomar1-0/+4
Reported-by: Mathnerd314 <mathnerd314.gph@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Cc: <linux-fsdevel@vger.kernel.org> Cc: Matthew Wilcox <willy@infradead.org> Cc: Alexander Viro <viro@zeniv.linux.org.uk>
2022-01-25swapon.2: CONFIG_DEVICE_PRIVATE decreases number of available swap files by 4Alejandro Colomar1-0/+7
[Aleksander]: I noticed that swapon docs are missing some newer information about CONFIG_DEVICE_PRIVATE that decreases the number of available swap files. When it comes to kernel versions that I used <https://elixir.bootlin.com/linux/v5.14/source/include/linux/swap.h> and <https://elixir.bootlin.com/linux/v4.14/source/include/linux/swap.h> to check when the changes were introduced. Reported-by: Aleksander Baranowski <alex@euro-linux.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-25memfd_secret.2: mention ENOSYS is also returned when secretmem_enable=0наб1-1/+3
Ref: https://lore.kernel.org/all/20210518072034.31572-5-rppt@kernel.org/ Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Cc: Mike Rapoport <rppt@linux.ibm.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-25memfd_secret.2: mention that it inhibits hibernationнаб1-1/+4
Ref: https://lore.kernel.org/all/20210518072034.31572-6-rppt@kernel.org/ Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Cc: Mike Rapoport <rppt@linux.ibm.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-14epoll_ctl.2: replace input flag footnotes with a list sectionнаб1-32/+7
This is shorter, clearly separates the events from the flags, and more consistent (cf. EPOLLEXCLUSIVE which has a different message than the rest) Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-13epoll_wait.2: epoll_pwait2(2) wrapper added to glibcAlejandro Colomar1-3/+0
glibc's wrapper has the already documented prototype, so no need to change anything. Just remove the FIXME. Reported-by: Adhemerval Zanella <adhemerval.zanella@linaro.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Cc: Florian Weimer <fweimer@redhat.com> Cc: Carlos O'Donell <carlos@redhat.com>
2022-01-11personality.2: WHOLE_SECONDS never did anythingнаб1-1/+1
git log -SWHOLE_SECONDS on a unified pre-2.6 linux repository reveals the following three releases: Author: Andrew Morton <akpm@osdl.org> Date: Sun Aug 31 04:30:04 2003 -0700 [PATCH] abi doc update From: <ffrederick@prov-liege.be> Update the abi sysctl documentation. Author: Linus Torvalds <torvalds@athlon.transmeta.com> Date: Mon Feb 4 20:17:27 2002 -0800 v2.4.9.7 -> v2.4.9.8 - Christoph Hellwig: clean up personality handling a bit - Robert Love: update sysctl/vm documentation - make the three-argument (that everybody hates) "min()" be "min_t()", and introduce a type-anal "min()" that complains about arguments of different types. Author: Linus Torvalds <torvalds@linuxfoundation.org> Date: Fri Nov 23 15:09:30 2007 -0500 Import 1.1.14 1.1.14 adds personality.h: diff --git a/include/linux/personality.h b/include/linux/personality.h new file mode 100644 index 0000000000..714a5a66b5 --- /dev/null +++ b/include/linux/personality.h @@ -0,0 +1,12 @@ +/* Flags for bug emulation. These occupy the top three bytes. */ +#define STICKY_TIMEOUTS 0x8000000 +#define WHOLE_SECONDS 0x4000000 + +/* Personality types. These go in the low byte. */ +#define PER_MASK (0x00ff) +#define PER_LINUX (0x0000) +#define PER_SVR4 (0x0001 | STICKY_TIMEOUTS) +#define PER_SVR3 (0x0002 | STICKY_TIMEOUTS) +#define PER_SCOSVR3 (0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS) +#define PER_WYSEV386 (0x0004 | STICKY_TIMEOUTS) +#define PER_ISCR4 (0x0005 | STICKY_TIMEOUTS) 2.4.9.8 shuffles it around with no substantial changes (hunk enhanced to show texture): diff --git a/include/linux/personality.h b/include/linux/personality.h index 58cab509e3..230d394603 100644 --- a/include/linux/personality.h +++ b/include/linux/personality.h @@ -1,68 +1,126 @@ -/* Flags for bug emulation. These occupy the top three bytes. */ -#define STICKY_TIMEOUTS 0x4000000 -#define WHOLE_SECONDS 0x2000000 -#define ADDR_LIMIT_32BIT 0x0800000 -/* Personality types. These go in the low byte. Avoid using the top bit, - * it will conflict with error returns. +/* + * Flags for bug emulation. + * + * These occupy the top three bytes. */ -#define PER_MASK (0x00ff) -#define PER_LINUX (0x0000) -#define PER_LINUX_32BIT (0x0000 | ADDR_LIMIT_32BIT) -#define PER_SVR4 (0x0001 | STICKY_TIMEOUTS) -#define PER_SVR3 (0x0002 | STICKY_TIMEOUTS) -#define PER_SCOSVR3 (0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS) -#define PER_WYSEV386 (0x0004 | STICKY_TIMEOUTS) -#define PER_ISCR4 (0x0005 | STICKY_TIMEOUTS) -#define PER_BSD (0x0006) -#define PER_SUNOS (PER_BSD | STICKY_TIMEOUTS) -#define PER_XENIX (0x0007 | STICKY_TIMEOUTS) -#define PER_LINUX32 (0x0008) -#define PER_IRIX32 (0x0009 | STICKY_TIMEOUTS) /* IRIX5 32-bit */ -#define PER_IRIXN32 (0x000a | STICKY_TIMEOUTS) /* IRIX6 new 32-bit */ -#define PER_IRIX64 (0x000b | STICKY_TIMEOUTS) /* IRIX6 64-bit */ -#define PER_RISCOS (0x000c) -#define PER_SOLARIS (0x000d | STICKY_TIMEOUTS) - -/* Description of an execution domain - personality range supported, - * lcall7 syscall handler, start up / shut down functions etc. - * N.B. The name and lcall7 handler must be where they are since the - * offset of the handler is hard coded in kernel/sys_call.S. +enum { + MMAP_PAGE_ZERO = 0x0100000, + ADDR_LIMIT_32BIT = 0x0800000, + SHORT_INODE = 0x1000000, + WHOLE_SECONDS = 0x2000000, + STICKY_TIMEOUTS = 0x4000000, +}; + +/* + * Personality types. + * + * These go in the low byte. Avoid using the top bit, it will + * conflict with error returns. + */ +enum { + PER_LINUX = 0x0000, + PER_LINUX_32BIT = 0x0000 | ADDR_LIMIT_32BIT, + PER_SVR4 = 0x0001 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO, + PER_SVR3 = 0x0002 | STICKY_TIMEOUTS | SHORT_INODE, + PER_SCOSVR3 = 0x0003 | STICKY_TIMEOUTS | + WHOLE_SECONDS | SHORT_INODE, + PER_OSR5 = 0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS, + PER_WYSEV386 = 0x0004 | STICKY_TIMEOUTS | SHORT_INODE, + PER_ISCR4 = 0x0005 | STICKY_TIMEOUTS, + PER_BSD = 0x0006, + PER_SUNOS = 0x0006 | STICKY_TIMEOUTS, + PER_XENIX = 0x0007 | STICKY_TIMEOUTS | SHORT_INODE, + PER_LINUX32 = 0x0008, + PER_IRIX32 = 0x0009 | STICKY_TIMEOUTS,/* IRIX5 32-bit */ + PER_IRIXN32 = 0x000a | STICKY_TIMEOUTS,/* IRIX6 new 32-bit */ + PER_IRIX64 = 0x000b | STICKY_TIMEOUTS,/* IRIX6 64-bit */ + PER_RISCOS = 0x000c, + PER_SOLARIS = 0x000d | STICKY_TIMEOUTS, + PER_UW7 = 0x000e | STICKY_TIMEOUTS | MMAP_PAGE_ZERO, + PER_UW7 = 0x000e | STICKY_TIMEOUTS | MMAP_PAGE_ZERO, + PER_MASK = 0x00ff, +}; And the ABI doc creates Documentation/sysctl/abi.txt, noting +defhandler_coff: +defined value : +PER_SCOSVR3 +0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS | SHORT_INODE The same log of mainline reveals, apart from the original 2.6.12-rc2 import: 1. 607ca46e97a1b6594b29647d98a32d545c24bdff ("UAPI: (Scripted) Disintegrate include/linux") ‒ include/linux/{=> uapi/}personality.h 2. 53b9537509654a6267c3f56b4d2e7409b9089686 ("docs: sysctl: convert to ReST") ‒ Documentation/sysctl/abi.{rst => txt} 3. 9f35cf8bd7e3347b0679c3f9b5e0bc5493925a1f ("docs: rewrite admin-guide/sysctl/abi.rst") ‒ rewrites Documentation/admin-guide/sysctl/abi.rst entirely, removing all personality bits ("all the existing entries are no longer present, so this removes them;") Current mainline contains WHOLE_SECONDS thrice: include/uapi/linux/personality.h: WHOLE_SECONDS = 0x2000000, include/uapi/linux/personality.h- PER_SCOSVR3 = 0x0003 | STICKY_TIMEOUTS | include/uapi/linux/personality.h: WHOLE_SECONDS | SHORT_INODE, include/uapi/linux/personality.h: PER_OSR5 = 0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS, It never did anything. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Cc: Jakub Wilk <jwilk@jwilk.net>
2022-01-08seccomp.2: Use syscall() in the example codeStephen Kitt1-1/+2
Since seccomp() doesn't exist in glibc, avoid relying on it, and use syscall() instead. This updates the example program to match the documentation, which was updated in commit 5945cd7bd3c3 ("seccomp.2: Use syscall(SYS_...); for system calls without a wrapper"). Signed-off-by: Stephen Kitt <steve@sk2.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-03tee.2: ffixнаб1-1/+0
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-03tee.2: Remove unnecessary elseAlejandro Colomar1-3/+3
Both continue and exit(3) jump out of the normal flow, so there's no need for an else. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-03tee.2: always fail after perror() in exampleнаб1-1/+1
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-03tee.2: use for(;;) instead of do{}while(1)наб1-2/+2
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-03tee.2: use proper types in exampleнаб1-1/+1
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-01-03tee.2: ffixнаб1-1/+1
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-12-31ioctl_tty.2: Update the section number of ldattachMasatake YAMATO1-1/+1
The man page for ldattach was added to util-linux(-ng?) as a part of the section 8, not the section 1. commit 1e8d11c459ae93a4d8d7976a8530ae5198206a26 Author: Tilman Schmidt <tilman@imap.cc> Date: Mon Mar 10 14:20:26 2008 +0100 ldattach: new command Add an ldattach(8) utility program similar to the one in OpenBSD. Signed-off-by: Tilman Schmidt <tilman@imap.cc> Signed-off-by: Masatake YAMATO <yamato@redhat.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-12-18access.2: Document EPERM error codeAlejandro Colomar1-0/+5
[Todd]: If a file/directory has the immutable flag set, access/faccessat will return EPERM if write access is requested. This is not currently documented, presumably because it is Linux-specific (though BSD has similar behavior that is documented). Perhaps something like the following in the ERRORS section. EPERM Write permission was requested and pathname has the immutable flag set. (See also ioctl_iflags(2).) Also perhaps add ioctl_iflags(2) to the SEE ALSO section. This came up in reference to: <https://github.com/sudo-project/sudo/issues/122> Reported-by: "Todd C. Miller" <Todd.Miller@sudo.ws> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-12-09kcmp.2: still depends on kconfigJann Horn1-1/+3
The manpage claims that kcmp() is now available unconditionally. That's not true; from kernel/Makefile: obj-$(CONFIG_KCMP) += kcmp.o This new Kconfig flag is forced on by CONFIG_CHECKPOINT_RESTORE as before, but also by CONFIG_DRM, which means that pretty much any kernel built to support desktop systems will implicitly have it available. But if you compiled some kind of server/embedded kernel without DRM and without CHECKPOINT_RESTORE, you'd have to flip on the expert config option to get KCMP. Signed-off-by: Jann Horn <jannh@google.com> [alx: semantic newlines] Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-12-06Many pages: replace in-line struct timespec declarations with "timespec(3) ↵наб11-112/+38
structure" references Also stripped "as specified in <time.h>" from clock_getres.2, as it already lives in <time.h>. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-12-06madvise.2: tfixMatheus Tavares1-1/+1
Add a missing period. Signed-off-by: Matheus Tavares <matheus.bernardino@usp.br> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-23init_module.2: Add ETXTBSY error for finit_moduleYang Xu1-0/+6
Since kernel commit[1], finit_module fails with ETXTBSY error if fd has write permission. Since kernel commit[2], finit_module fails with EBADF error if fd doesn't have read permission. So we can use read-write permission to trigger ETXTBSY error all the time since linux 4.7. [1]https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=39d637af [2]https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=032146cd Signed-off-by: Yang Xu <xuyang2018.jy@fujitsu.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-22quotactl.2: Add buggy version for Q_XQUOTARM ioctlYang Xu1-1/+2
Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Yang Xu <xuyang2018.jy@fujitsu.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-22mmap.2: ENOMEM possible when exceeding VA spaceTopi Miettinen1-0/+5
A bit surprisingly, mmap(2) returns ENOMEM when the virtual address space of the CPU is exceeded. The expectation could be EINVAL instead ("We don't like _addr_, length, or offset (e.g., they are _too large_, or not aligned on a page boundary)"). This is demonstrated with the following program: #include <stdio.h> #include <sys/mman.h> int main(void) { for (int i = 12; i < 64; i++) { void *addr = mmap((void *)(1UL << i), 4096, PROT_NONE, MAP_ANON | MAP_FIXED_NOREPLACE | MAP_PRIVATE, -1, 0); if (addr == MAP_FAILED) fprintf(stderr, "mmap %lx: %m\n", (1UL << i)); continue; munmap(addr, 4096); } } It gives the following output when running on CPU with 48 bit VA space: mmap 800000000000: Cannot allocate memory mmap 1000000000000: Cannot allocate memory mmap 2000000000000: Cannot allocate memory mmap 4000000000000: Cannot allocate memory mmap 8000000000000: Cannot allocate memory mmap 10000000000000: Cannot allocate memory mmap 20000000000000: Cannot allocate memory mmap 40000000000000: Cannot allocate memory mmap 80000000000000: Cannot allocate memory mmap 100000000000000: Cannot allocate memory mmap 200000000000000: Cannot allocate memory mmap 400000000000000: Cannot allocate memory mmap 800000000000000: Cannot allocate memory mmap 1000000000000000: Cannot allocate memory mmap 2000000000000000: Cannot allocate memory mmap 4000000000000000: Cannot allocate memory mmap 8000000000000000: Cannot allocate memory Signed-off-by: Topi Miettinen <toiwoton@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-22fanotify_init.2: Minor tweaks to Matthew's patchAlejandro Colomar1-5/+5
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Cc: Matthew Bobrowski <mbobrowski@mbobrowski.org> Cc: Amir Goldstein <amir73il@gmail.com>
2021-11-22fanotify_init.2: Document kernel commitsAmir Goldstein1-0/+2
Document the kernel commits that added support for FAN_REPORT_DIR_FID and FAN_REPORT_NAME. Signed-off-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-22fanotify_mark.2: Update w.r.t tmpfs supportAmir Goldstein1-1/+6
tmpfs can be watched with FAN_REPORT_FID since kernel v5.13. Signed-off-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-22fanotify_init.2, fanotify_mark.2, fanotify.7: Configurable limitsAmir Goldstein2-7/+20
Update documentation about the new configurable fanotify limits that will be available from Linux kernel 5.13. Signed-off-by: Amir Goldstein <amir73il@gmail.com> Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-22fanotify_init.2, fanotify_mark.2: Document unprivileged listenerMatthew Bobrowski2-12/+74
Document the limited fanotify functionality that will be available for unprivileged users from kernel v5.13. Signed-off-by: Matthew Bobrowski <mbobrowski@mbobrowski.org> Signed-off-by: Amir Goldstein <amir73il@gmail.com> Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-03quotactl.2: Remove kernel version for Q_XQUOTARM ioctlYang Xu1-2/+1
This patch[1] is designed to fix bug for Q_XQUOTARM ioctl not for introduced. So remove it. [1]https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9da93f9b7c Signed-off-by: Yang Xu <xuyang2018.jy@fujitsu.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-03landlock_add_rule.2, landlock_create_ruleset.2, landlock_restrict_self.2, ↵Alejandro Colomar3-21/+27
landlock.7: Minor tweaks to Mickaël's patches - exit(EXIT_FAILURE) instead of return 1, for consistency with the rest of the manual pages. - Use old declarations: variables defined at the top, separate from code. Initialization other than zero doesn't belong there. - Don't break URIs in weird ways (a trailing slash on a new line would be weird). - Break URIs after the slash; not before. Per Branden's advise. - Use uint32_t instead of __u32 in prototypes. - tfix - A few semantic newline improvements. - ffix Cc: Mickaël Salaün <mic@digikod.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-03landlock_restrict_self.2: Document new syscallMickaël Salaün1-0/+133
This is an adaptation of https://www.kernel.org/doc/html/v5.13/userspace-api/landlock.html Signed-off-by: Mickaël Salaün <mic@linux.microsoft.com> Link: https://lore.kernel.org/r/20210818155931.484070-5-mic@digikod.net Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-03landlock_add_rule.2: Document new syscallMickaël Salaün1-0/+144
This is an adaptation of https://www.kernel.org/doc/html/v5.13/userspace-api/landlock.html Signed-off-by: Mickaël Salaün <mic@linux.microsoft.com> Link: https://lore.kernel.org/r/20210818155931.484070-4-mic@digikod.net Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-03landlock_create_ruleset.2: Document new syscallMickaël Salaün1-0/+139
This is an adaptation of https://www.kernel.org/doc/html/v5.13/userspace-api/landlock.html Signed-off-by: Mickaël Salaün <mic@linux.microsoft.com> Link: https://lore.kernel.org/r/20210818155931.484070-3-mic@digikod.net Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-11-02quotactl.2: Use correct limits for vfsv1 formatYang Xu1-1/+1
According to kernel code and the following patch, the maximum quota limit setting should be 2^63 -1 instead of 2^64. [1] <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=7e08da5> Signed-off-by: Yang Xu <xuyang2018.jy@fujitsu.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-10-28ioctl.2: SEE ALSO: Add ioctl_ficloneBenjamin Peterson1-0/+1
Signed-off-by: Benjamin Peterson <benjamin@python.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-10-25clock_nanosleep.2: tfix CLOCK_BOOTTIMEMelker Narikka1-1/+1
Signed-off-by: Melker Narikka <meklu@meklu.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-10-07msgctl.2: tfixAlejandro Colomar1-1/+1
Reported-by: Jayprakash Ray <r.jay3283@gmail.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-10-03mount.2: note that mandatory locking is now fully deprecatedJeff Layton1-0/+2
This support has been fully removed from the kernel as of v5.15. Cc: Jan Kara <jack@suse.cz> Signed-off-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-10-03fcntl.2: note that mandatory locking is fully deprecated as of v5.15Jeff Layton1-1/+1
Cc: Jan Kara <jack@suse.cz> Signed-off-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-10-02madvise.2: Document MADV_POPULATE_READ and MADV_POPULATE_WRITEDavid Hildenbrand1-0/+156
MADV_POPULATE_READ and MADV_POPULATE_WRITE have been merged into upstream Linux via commit 4ca9b3859dac ("mm/madvise: introduce MADV_POPULATE_(READ|WRITE) to prefault page tables"), part of v5.14-rc1. Further, commit eb2faa513c24 ("mm/madvise: report SIGBUS as -EFAULT for MADV_POPULATE_(READ|WRITE)"), part of v5.14-rc6, made sure that SIGBUS is converted to -EFAULT instead of -EINVAL. Let's document the behavior and error conditions of these new madvise() options. Acked-by: Pankaj Gupta <pankaj.gupta@ionos.com> Cc: Michael Kerrisk <mtk.manpages@gmail.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Michal Hocko <mhocko@suse.com> Cc: Oscar Salvador <osalvador@suse.de> Cc: Jann Horn <jannh@google.com> Cc: Mike Rapoport <rppt@kernel.org> Cc: Linux API <linux-api@vger.kernel.org> Cc: linux-mm@kvack.org Signed-off-by: David Hildenbrand <david@redhat.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-26syscalls.2: Remove duplicate mention of landlock_add_rule.Günther Noack1-1/+0
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-20send.2: Add MSG_FASTOPEN flagWei Wang1-0/+32
MSG_FASTOPEN flag is available since Linux 3.7. Add detailed description in the manpage according to RFC7413. Signed-off-by: Wei Wang <weiwan@google.com> Reviewed-by: Yuchung Cheng <ycheng@google.com> Reviewed-by: Eric Dumazet <edumazet@google.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-19listxattr.2: tfixAlejandro Colomar1-1/+1
Reported-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-11futex.2: tfixJakub Wilk1-1/+1
Signed-off-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-10ioctl_tty.2: Fix information about header include filePali Rohár1-2/+17
Header file termios.h contains incompatible definitions for linux ioctl calls. Correct definitions are exported by header file linux/termios.h but this file conflicts with sys/ioctl.h header file (required for ioctl() call). Therefore include direct asm header file asm/termbits.h which contains compatible definitions and structures for ioctl calls. Signed-off-by: Pali Rohár <pali@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-10clone.2: ERRORS: Add EACCESS with CLONE_INTO_CGROUP + clone3Alejandro Colomar1-0/+10
[Andrew]: I noticed that clone3 can send the EACCES errno after I wrote a program that used clone3 with the CLONE_INTO_CGROUP flag. To me, it's important to know what kind of failure occurred if the clone3() fails, so I was glad that a unique errno is set for this case, but it wasn't documented on the clone man page. [Christian]: In essence, any error that could occur during regular fs-based migration at write-time can also occur during CLONE_INTO_CGROUP. The clone3() manpage just has the inverse of that above statement: "Note that all of the usual restrictions (described in cgroups(7)) on placing a process into a version 2 cgroup apply." Reported-by: Andrew Wock <ajwock@gmail.com> Acked-by: Christian Brauner <christian.brauner@ubuntu.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-10process_madvise.2: ffixAlejandro Colomar1-2/+2
And srcfix too Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-10process_madvise.2: Minor tweaks to Zhangkui's patchAlejandro Colomar1-3/+3
I also fixed surrounding cases to avoid confusion. Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-10process_madvise.2: Add MADV_WILLNEED to process_madvise()zhangkui1-0/+4
Add MADV_WILLNEED to process_madvise() for read-ahead swapped out memory immediately when the app switches to forground. https://lore.kernel.org/patchwork/patch/1472006/ Signed-off-by: zhangkui <zhangkui@oppo.com> Reviewed-by: Suren Baghdasaryan <surenb@google.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-10ioctl_tty.2: Minor tweaks to Pali's patchAlejandro Colomar1-13/+13
Cc: Pali Rohár <pali@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-10ioctl_tty.2: Add example how to get or set baudrate on the serial portPali Rohár1-0/+100
Setting custom baudrate for which is not defined Bnnn constant is possible via BOTHER flag and then filling speed in c_ospeed and c_ispeed fields. These two fields are either in struct termios or struct termios2. Former belongs to TCGETS/TCSETS ioctls, latter to TCGETS2/TCSETS2 ioctls. BOTHER flag with these two fields and new struct termios2 is not supported by older versions of include header files. Some architectures (e.g. amd64) provide both struct termios and struct termios2, but c_ospeed and c_ispeed are only in struct termios2. Some other architectures (e.g. alpha) provide both struct termios and struct termios2 and both have c_ospeed and c_ispeed fields. And some other architectures (e.g. powerpc) provide only struct termios (no struct termios2) and it has c_ospeed and c_ispeed fields. So basically to support all architectures it is needed to use struct termios2 when TCGETS2/TCSETS2 is supported. Otherwise it is needed to use struct termios with TCGETS/TCSETS (case for e.g. powerpc). Setting input baudrate is done via IBSHIFT macro. Signed-off-by: Pali Rohár <pali@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-10memfd_secret.2: Minor tweaks to Mike's patchAlejandro Colomar1-4/+2
Cc: Mike Rapoport <rppt@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-10memfd_secret.2: add NOTES section ...Mike Rapoport1-0/+61
... that explains the rationale for the system call Signed-off-by: Mike Rapoport <rppt@linux.ibm.com> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2021-09-02prctl.2: Rewrite the description of PR_SET_SECCOMP to defer to seccomp(2)Michael Kerrisk1-46/+22
There is a lot of unnecessary duplication of content of the seccomp material in prctl(2) and seccomp(2). Trevor Woerner also noted that there is an error in prctl(2), where it says that the filters "are run in order until the first non-allow result is seen", which contradicts the correct statement in seccomp(2) that *all* filters are executed. So, rewrite the seccomp material in prctl(2) to strip out most of the content duplicated in seccomp(2), and replace the removed text with statements deferring to to seccomp(2). Reported-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-09-01prctl.2: Note that seccomp(2) is preferred over prctl(2) for setting seccomp ↵Michael Kerrisk1-1/+2
mode Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-31exit_group.2: Remove a confusing reference to _exit(2) in DESCRIPTIONMichael Kerrisk1-3/+1
As noted by Jakub: BTW, the exit_group.2 man page could use an update (possibly by merging it into exit.2): it says that the "system call is is equivalent to _exit(2) except that it terminates not only the calling thread, but all threads in the calling process's thread group", which isn't helpful these days. Reported-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-31exit_group.2: SEE ALSO: s/exit(2)/_exit(2)/Michael Kerrisk1-1/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-31_exit.2: Clarify the distinction between the raw syscall and the wrapper ↵Michael Kerrisk1-7/+14
function Further clarify the difference between the raw _exit() system call and the C library wrapper. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-30ioctl_tty.2: TIOCGSID is equivalent to tcgetsid()Pali Rohár1-0/+3
Signed-off-by: Pali Rohár <pali@kernel.org> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-27syscalls.2: Add Linux 5.14 system callsMichael Kerrisk1-1/+2
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-27memfd_secret.2: SEE ALSO: add memfd_create(2)Michael Kerrisk1-0/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-27memfd_create.2: SEE ALSO: add memfd_secret(2)Michael Kerrisk1-0/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-27memfd_secret.2: Minor edits to Mike Rapoport's patchMichael Kerrisk1-6/+6
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-27memfd_secret.2: wfixMichael Kerrisk1-1/+2
Added "RAM-based" after consultation with Mike Rapoport Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-27memfd_secret.2: New page describing memfd_secret() system callMike Rapoport1-0/+154
Signed-off-by: Mike Rapoport <rppt@linux.ibm.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-27iconv.1, ldd.1, accept.2, access.2, add_key.2, arch_prctl.2, bpf.2, chmod.2, ↵Michael Kerrisk43-43/+43
chown.2, close_range.2, copy_file_range.2, execve.2, execveat.2, fanotify_mark.2, futex.2, futimesat.2, getpriority.2, intro.2, ioctl_tty.2, keyctl.2, link.2, membarrier.2, mkdir.2, mknod.2, mlock.2, mount.2, mount_setattr.2, open.2, open_by_handle_at.2, perf_event_open.2, pidfd_open.2, readlink.2, readv.2, rename.2, request_key.2, seccomp.2, sigaction.2, stat.2, statx.2, symlink.2, syscalls.2, umount.2, unlink.2, utimensat.2, wait.2, bsearch.3, fflush.3, getaddrinfo.3, getauxval.3, getopt.3, getsubopt.3, mkfifo.3, pthread_mutex_consistent.3, pthread_setname_np.3, pthread_tryjoin_np.3, scandir.3, sem_wait.3, stailq.3, strlen.3, strstr.3, termios.3, tsearch.3, wcslen.3, wcstok.3, wordexp.3, proc.5, capabilities.7, cgroups.7, fanotify.7, mount_namespaces.7, namespaces.7, path_resolution.7, pipe.7, posixoptions.7, user_namespaces.7, vdso.7, iconvconfig.8, ld.so.8: tstamp Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-20mount.2: ERRORS: add EPERM error for case where a mount is lockedMichael Kerrisk1-0/+15
Refer the reader to mount_namespaces(7) for details. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-20umount.2: ERRORS: add EINVAL for case where mount is lockedMichael Kerrisk1-0/+5
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18add_key.2, keyctl.2, request_key.2: Note that the "libkeyutils" package ↵Michael Kerrisk3-2/+11
provides <keyutils.h> See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=992377 Reported-by: Dominique Brazziel <dbrazziel@snet.net> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18fanotify_mark.2: Revert cruft added in commit 717c3a7dcf3dcf178afMichael Kerrisk1-50/+0
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18prctl.2: tfixMichael Kerrisk1-1/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18readv.2, pthread_tryjoin_np.3, stailq.3, strlen.3, wcslen.3: Arrange .SH ↵Michael Kerrisk1-12/+12
sections in correct order Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18intro.2, mount_setattr.2, seccomp_unotify.2, fflush.3, ↵Michael Kerrisk3-4/+4
pthread_mutex_consistent.3: Place SEE ALSO entries in correct order Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18chmod.2, chown.2, open.2, mkdir.2, mknod.2, readlink.2, stat.2, symlink.2, ↵Michael Kerrisk8-200/+166
mkfifo.3, scandir.3, sem_wait.3: ERRORS: combine errors into a single alphabetic list These pages split out extra errors for some APIs into a separate list. Probably, the pages are easier to ready if all errors are combined into a single list. Note that there still remain a few pages where the errors are listed separately for different APIs. For the moment, it seems best to leave those pages as is, since the error lists are largely distinct in those pages. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18arch_prctl.2, perf_event_open.2, pthread_tryjoin_np.3: ERRORS: correct ↵Michael Kerrisk2-8/+8
alphabetic order Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18accept.2, access.2, getpriority.2, mlock.2: ERRORS: combine errors into a ↵Michael Kerrisk4-118/+106
single list These split out errors into separate lists (perhaps per API, perhaps "may" vs "shall", perhaps "Linux-specific" vs standard(??)), but there's no good reason to do this. It makes the error list harder to read, and is inconsistent with other pages. So, combine the errors into a single list. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18shmop.2: wfixMichael Kerrisk1-1/+5
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18fanotify_mark.2, link.2, mount.2, umount.2, proc.5, cgroups.7, fanotify.7: ↵Michael Kerrisk4-54/+54
Terminology clean-up: "mount point" ==> "mount" Many times, these pages use the terminology "mount point", where "mount" would be better. A "mount point" is the location at which a mount is attached. A "mount" is an association between a filesystem and a mount point. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-18rename.2: wfixMichael Kerrisk1-1/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-13statx.2: srcfix: semantic newlinesMichael Kerrisk1-1/+2
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-13statx.2: Document STATX_MNT_IDNeilBrown1-0/+11
Linux 5.8 adds STATX_MNT_ID and stx_mnt_id. Add description to statx.2 Signed-off-by: NeilBrown <neilb@suse.de> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-13mount_setattr.2: srcfix: add note explaining Christian's use of -ve dirfd valuesMichael Kerrisk1-0/+12
From email with Christian Brauner: >>>>>> int fd_tree = open_tree(-EBADF, source, >>>>>> OPEN_TREE_CLONE | OPEN_TREE_CLOEXEC | >>>>>> AT_EMPTY_PATH | (recursive ? AT_RECURSIVE : 0)); >>>>> >>>>> ??? >>>>> What is the significance of -EBADF here? As far as I can tell, it >>>>> is not meaningful to open_tree()? >>>> >>>> I always pass -EBADF for similar reasons to [2]. Feel free to just use -1. >>> >>> ???? >>> But here, both -EBADF and -1 seem to be wrong. This argument >>> is a dirfd, and so should either be a file descriptor or the >>> value AT_FDCWD, right? >> >> [1]: In this code "source" is expected to be absolute. If it's not >> absolute we should fail. This can be achieved by passing -1/-EBADF, >> afaict. > > D'oh! Okay. I hadn't considered that use case for an invalid dirfd. > (And now I've done some adjustments to openat(2),which contains a > rationale for the *at() functions.) > > So, now I understand your purpose, but still the code is obscure, > since > > * You use a magic value (-EBADF) rather than (say) -1. > * There's no explanation (comment about) of the fact that you want > to prevent relative pathnames. > > So, I've changed the code to use -1, not -EBADF, and I've added some > comments to explain that the intent is to prevent relative pathnames. > Okay? Sounds good. > > But, there is still the meta question: what's the problem with using > a relative pathname? Nothing per se. Ok, you asked so it's your fault: When writing programs I like to never use relative paths with AT_FDCWD because. Because making assumptions about the current working directory of the calling process is just too easy to get wrong; especially when pivot_root() or chroot() are in play. My absolut preference (joke intended) is to open a well-known starting point with an absolute path to get a dirfd and then scope all future operations beneath that dirfd. This already works with old-style openat() and _very_ cautious programming but openat2() and its resolve-flag space have made this **chef's kiss**. If I can't operate based on a well-known dirfd I use absolute paths with a -EBADF dirfd passed to *at() functions. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-13fanotify_mark.2: tfixMichael Kerrisk1-1/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-13open.2: Add mount_setattr(2) to list of 'dirfd' APIsMichael Kerrisk1-0/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-13mount_setattr.2: ffixMichael Kerrisk1-1/+2
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-13mount.2: SEE ALSO: add mount_setattr(2)Michael Kerrisk1-0/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12mount_setattr.2: Further tweaks after feedback from Christian BraunerMichael Kerrisk1-9/+22
Reported-by: Christian Brauner <christian.brauner@ubuntu.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12mount_setattr.2: Clarify the description of "detached" mountsMichael Kerrisk1-2/+6
From email: >> Thanks. I made it "detached". Elsewhere, the page already explains >> that a detached mount is one that: >> >> must have been created by calling open_tree(2) with the >> OPEN_TREE_CLONE flag and it must not already have been >> visible in the filesystem. >> >> Which seems a fine explanation. >> >> ???? >> But, just a thought... "visible in the filesystem" seems not quite accurate. >> What you really mean I guess is that it must not already have been >> /visible in the filesystem hierarchy/previously mounted/something else/, >> right? I suppose that I should have clarified that my main problem was that you were using the word "filesystem" in a way that I find unconventional/ambiguous. I mean, I normally take the term "filesystem" to be "a storage system for folding files". Here, you are using "filesystem" to mean something else, what I might call like "the single directory hierarchy" or "the filesystem hierarchy" or "the list of mount points". > A detached mount is created via the OPEN_TREE_CLONE flag. It is a > separate new mount so "previously mounted" is not applicable. > A detached mount is _related_ to what the MS_BIND flag gives you with > mount(2). However, they differ conceptually and technically. A MS_BIND > mount(2) is always visible in the fileystem when mount(2) returns, i.e. > it is discoverable by regular path-lookup starting within the > filesystem. > > However, a detached mount can be seen as a split of MS_BIND into two > distinct steps: > 1. fd_tree = open_tree(OPEN_TREE_CLONE): create a new mount > 2. move_mount(fd_tree, <somewhere>): attach the mount to the filesystem > > 1. and 2. together give you the equivalent of MS_BIND. > In between 1. and 2. however the mount is detached. For the kernel > "detached" means that an anonymous mount namespace is attached to it > which doen't appear in proc and has a 0 sequence number (Technically, > there's a bit of semantical argument to be made that "attached" and > "detached" are ambiguous as they could also be taken to mean "does or > does not have a parent mount". This ambiguity e.g. appears in > do_move_mount(). That's why the kernel itself calls it an "anonymous > mount". However, an OPEN_TREE_CLONE-detached mount of course doesn't > have a parent mount so it works.). > > For userspace it's better to think of detached and attached in terms of > visibility in the filesystem or in a mount namespace. That's more > straightfoward, more relevant, and hits the target in 90% of the cases. > > However, the better and clearer picture is to say that a > OPEN_TREE_CLONE-detached mount is a mount that has never been > move_mount()ed. Which in turn can be defined as the detached mount has > never been made visible in a mount namespace. Once that has happened the > mount is irreversibly an attached mount. > > I keep thinking that maybe we should just say "anonymous mount" > everywhere. So changing the wording to: I'm not against the word "detached". To user space, I think it is a little more meaningful than "anonymous". For the moment, I'll stay with "detached", but if you insist on "anonymous", I'll probably change it. > [...] > EINVAL The mount that is to be ID mapped is not an anonymous mount; > that is, the mount has already been visible in a mount namespace. I like that text *a lot* better! Thanks very much for suggesting wordings. It makes my life much easier. I've made the text: EINVAL The mount that is to be ID mapped is not a detached mount; that is, the mount has not previously been visible in a mount namespace. > [...] > The mount must be an anonymous mount; that is, it must have been > created by calling open_tree(2) with the OPEN_TREE_CLONE flag and it > must not already have been visible in a mount namespace, i.e. it must > not have been attached to the filesystem hierarchy with syscalls such > as move_mount() syscall. And that too! I've made the text: • The mount must be a detached mount; that is, it must have been created by calling open_tree(2) with the OPEN_TREE_CLONE flag and it must not already have been visible in a mount namespace. (To put things another way: the mount must not have been attached to the filesystem hierarchy with a system call such as move_mount(2).) Reported-by: Christian Brauner <christian.brauner@ubuntu.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12mount_setattr.2: EXAMPLES: use -1 rather than -EBADFMichael Kerrisk1-2/+8
From email with Christian Braner: > [1]: In this code "source" is expected to be absolute. If it's not > absolute we should fail. This can be achieved by passing -1/-EBADF, > afaict. D'oh! Okay. I hadn't considered that use case for an invalid dirfd. (And now I've done some adjustments to openat(2),which contains a rationale for the *at() functions.) So, now I understand your purpose, but still the code is obscure, since * You use a magic value (-EBADF) rather than (say) -1. * There's no explanation (comment about) of the fact that you want to prevent relative pathnames. So, I've changed the code to use -1, not -EBADF, and I've added some comments to explain that the intent is to prevent relative pathnames. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12fanotify_mark.2, futimesat.2, mount_setattr.2, statx.2, symlink.2, mkfifo.3: ↵Michael Kerrisk5-0/+73
Refer the reader to openat(2) for explanation of why 'dirfd' is useful Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12fanotify_mark.2: wfixMichael Kerrisk1-1/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12open.2: Minor tweaks to list of functions that take a dirfd argumentMichael Kerrisk1-1/+2
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12access.2, chmod.2, chown.2, execveat.2, futimesat.2, link.2, mkdir.2, ↵Michael Kerrisk18-23/+86
mknod.2, mount_setattr.2, open.2, open_by_handle_at.2, readlink.2, rename.2, stat.2, statx.2, symlink.2, unlink.2, utimensat.2, mkfifo.3, scandir.3: Fix EBADF error description Make the description of the EBADF error for invalid 'dirfd' more uniform. In particular, note that the error only occurs when the pathname is relative, and that it occurs when the 'dirfd' is neither valid *nor* has the value AT_FDCWD. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12fanotify_mark.2: ERRORS: add missing EBADF error for invalid 'dirfd'Michael Kerrisk1-0/+8
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12open_by_handle_at.2: ERRORS: add missing EBADF error for invalid 'dirfd'Michael Kerrisk1-0/+6
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12mount_setattr.2: Rename 'path' to 'pathname'Michael Kerrisk1-10/+10
For consistency with other pages Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12open.2: Explicitly describe the EBADF error that can occur with openat()Michael Kerrisk1-0/+13
In particular, specifying an invalid file descriptor number in 'dirfd' can be used as a check that 'pathname' is absolute. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12open.2: Clarify that openat()'s dirfd must be opened with O_RDONLY or O_PATHMichael Kerrisk1-0/+7
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12open.2: Reorder list of cases for 'dirfd' argument of openat()Michael Kerrisk1-10/+10
In preparation for subsequent commits Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-12open.2: Minor reworking of the description of the 'dirfd' argument of openat()Michael Kerrisk1-2/+8
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-11syscalls.2: Add quotactl_fd(); remove quotactl_path()Michael Kerrisk1-1/+1
quotactl_path() was never wired up in Linux 5.13. It was replaced instead by quotactl_fd(), Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-11sigaction.2: Add kernel version for SA_UNSUPPORTED flagMichael Kerrisk1-1/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-11wait.2: ERRORS: document EAGAIN for waitid() on a PID file descriptorMichael Kerrisk1-0/+5
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-11pidfd_open.2: Document PIDFD_NONBLOCKMichael Kerrisk1-3/+12
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-11mount_setattr.2: Minor fixesMichael Kerrisk1-10/+9
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Changes after review feedback from Christian BraunerMichael Kerrisk1-24/+35
Reviewed-by: Christian Brauner <christian.brauner@ubuntu.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10ioctl_tty.2: Remove duplicated textMichael Kerrisk1-29/+0
Somehow I applied Pali Rohár's patch "Document ioctls: TCGETS2, TCSETS2, TCSETSW2, TCSETSF2" twice... Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Rework the discussion of MOUNT_ATTR__ATIMEMichael Kerrisk1-10/+14
Phrases such as "In the new mount API" will date fast. Remove it. Also: * Make it clear that MOUNT_ATTR__ATIME expresses a bit field. * Replace 'enum' with 'enumeration'. * Clarify what is meant by "partially" set MOUNT_ATTR__ATIME. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Remove description of propagation typesMichael Kerrisk1-20/+2
These types are already well described in mount_namespaces(7); indeed, much of the text from that page seems to have just been cut and pasted into this page! Simply referring the reader to mount_namespaces(7) is sufficient. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Reword the description of the 'propagation field'Michael Kerrisk1-4/+3
Point out that this field can have the value zero, meaning no change. And avoid discussions of 'enum', and simply say that otherwise the field has one of the MS_* values. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10seccomp.2: Clarify that bad system calls kill the threadEric W. Biederman1-2/+3
Reported-by: Acked-by: Kees Cook <keescook@chromium.org> Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10signal.2: srcfixMichael Kerrisk1-1/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: wfixMichael Kerrisk1-1/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Move the discussion of ID-mapped mounts to NOTESMichael Kerrisk1-167/+164
Having this discussion under DESCRIPTION clutters that section, and has the effect of burying the discussion of propagation. Move the discussion to NOTES, to make the page more readable. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Add a reference to mount_namespaces(7) in discussion of ↵Michael Kerrisk1-0/+3
propagation types The mount_namespaces(7) page has some further relevant details. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Rename 'dfd' to 'dirfd'Michael Kerrisk1-15/+15
'dirfd' is the name consistently used in other pages. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Remove some unnecessary intermediate variablesMichael Kerrisk1-5/+3
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Minor clean-ups in example programMichael Kerrisk1-34/+32
- Change some instances of "-" to "\" - Use C99 style (declare variables nearer use in code) - Add a bit of white space - Remove one 'const...const' added by Alex that caused compiler warnings - Use "reverse Christmas tree" form for declarations in main() - Other minor changes Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: SEE ALSO: place entries in correct orderMichael Kerrisk1-5/+5
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: SEE ALSO: remove unneeded entriesMichael Kerrisk1-4/+1
We don't really need ext4(5) and xfs(5) here. They provide no further info that is directly relevant to the reader of mount_setattr(2). clone3(2) isn't necessary because it is the same page as clone(2). Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Minor wording, grammar, and formatting fixesMichael Kerrisk1-117/+117
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: wfix: "idmapped/idmapping" is not natural EnglishMichael Kerrisk1-30/+31
Let's use ID mapped, ID mapping, etc. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: srcfixMichael Kerrisk1-2/+1
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Minor formatting fixesMichael Kerrisk1-12/+12
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: Minor tweaks to Christian's patchAlejandro Colomar1-221/+225
- Fix SYNOPSIS to fit in 78 columns Also, we don't show when an include is included for a specific type, unless that header is included _only_ for the type, or there might be confusion (e.g., termios). Instead, that type should be documented in system_data_types(7), with a link page mount_attr-struct(3). - Fix references to mount_setattr(). See man-pages(7): Any reference to the subject of the current manual page should be writ‐ ten with the name in bold followed by a pair of parentheses in Roman (normal) font. For example, in the fcntl(2) man page, references to the subject of the page would be written as: fcntl(). The preferred way to write this in the source file is: .BR fcntl () - Fix line breaks according to semantic newline rules (and add some commas) - Fix wrong usage of .IR when .RI should have been used - Fix formatting of variable part in FOO<number>: - Make italic the variable part (as groff_man(7) recommends) - Remove <> - Use syntax recommended by G. Branden Robinson (groff) - Fix unnecessary uses of .BR or .IR when .B or .I would suffice - Fix formatting of punctuation In some cases, it was in italics or bold, and it should always be in roman. - Use uppercase to begin text, even in bullet points, since those were multi-sentence. - Simplify usage of .RS/.RE in combination with .IP - s/fat/FAT/ as fs(7) does - Slightly reword some sentences for consistency - Use Linux-specific for consistency with other pages (in VERSIONS) - EXAMPLES: Place the return type in a line of its own (as in other pages) - Fix alignment of code - Replace unnecessary use of the GNU extension ({}) by do {} while (0) In that case, there was no return value (moreover, it's a noreturn). - Break complex declaration lines into a line for each variable The variables were being initialized, some to non-zero values, so for clarity, a line for each one seems more appropriate. - Add const to pointers when possible - s/\\/\e/ - Remove unmatched groff commands Cc: Christian Brauner <brauner@kernel.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-10mount_setattr.2: New manual page documenting the mount_setattr() system callChristian Brauner1-0/+1002
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com> Cc: Christoph Hellwig <hch@infradead.org> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-09futex.2: Rework the description of FUTEX_LOCK_PI2Michael Kerrisk1-14/+14
Note the use of FUTEX_CLOCK_REALTIME for selecting the clock, and eliminate repetition of details already covered in the description of FUTEX_LOCK_PI. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-09futex.2: Minor tweaks to Kurt's patchAlejandro Colomar1-39/+39
Cc: Kurt Kanzenbach <kurt@linutronix.de> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-09futex.2: Document FUTEX_LOCK_PI2Kurt Kanzenbach1-4/+49
FUTEX_LOCK_PI2 is a new futex operation which was recently introduced into the Linux kernel. It works exactly like FUTEX_LOCK_PI. However, it has support for selectable clocks for timeouts. By default CLOCK_MONOTONIC is used. If FUTEX_CLOCK_REALTIME is specified then the timeout is measured against CLOCK_REALTIME. This new operation addresses an inconsistency in the futex interface: FUTEX_LOCK_PI only works with timeouts based on CLOCK_REALTIME in contrast to all the other PI operations. Document the FUTEX_LOCK_PI2 command. Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-09syscalls.2: Add system calls that are new in 5.13Michael Kerrisk1-0/+5
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-09sigaction.2: Minor reworking of Alejandro Colomar's patchMichael Kerrisk1-1/+4
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-09sigaction.2: Minor tweaks to the code exampleMichael Kerrisk1-5/+5
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>