Commit Graph

21893 Commits

Author SHA1 Message Date
Michael Kerrisk 27482d700b elf.5: srcfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-13 11:13:43 +01:00
Michael Kerrisk 89a3c07fb2 elf.5: SEE ALSO: add objcopy(1)
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-13 11:13:36 +01:00
Alejandro Colomar 3af0cb4890 tcp.7: tcp_syncookies: It is now an integer [0, 2]
Since Linux kernel 3.12, tcp_syncookies can have the value 2,
which sends out cookies unconditionally.

Related kernel commits:
5ad37d5deee1ff7150a2d0602370101de158ad86
d8513df2598e5142f8a5c4724f28411936e1dfc7

Reported-by: Philip Rowlands <linux-kernel@dimebar.com>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Cc: Eric Dumazet <eric.dumazet@gmail.com>
Cc: Hannes Frederic Sowa <hannes@stressinduktion.org>
Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-13 11:13:30 +01:00
Michael Kerrisk b5dae39596 modf.3: tfix
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=976312

Reported-by: Bill Allombert <ballombe@debian.org>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-03 10:47:48 +01:00
Arusekk e2e73b468a keyctl.2: tfix
Fixes: fa76da808e

Signed-off-by: Arusekk <arek_koz@o2.pl>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-01 20:46:58 +01:00
Michael Kerrisk 45323bbef7 strnlen.3: Fix a small inconsistency in the text
Quoting Heinrich:

    The strnlen.3 manpage has the following sentence:

    "In doing this, strnlen() looks only at the first maxlen
    characters in the string pointed to by s and never beyond
    s+maxlen."

    This sentence is self-contradictory:

    The last visited character implied by "first maxlen
    characters" is s[maxlen-1].

    Given that "beyond a" does not include "a", the last visited
    character implied by "never beyond s+maxlen" is s[maxlen].

    A consistent sentence would be

    "In doing this, strnlen() looks only at the first maxlen
    characters in the string pointed to by s and never beyond
    s+maxlen-1."

    I would prefer

    "In doing this, strnlen() looks only at the first maxlen
    characters in the string pointed to by s and never beyond
    s[maxlen-1]"

Reported-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-28 10:00:23 +01:00
Alejandro Colomar e115d825c3 subpage_prot.2: SYNOPSIS: Fix return type: s/long/int/
The Linux kernel uses 'int' instead of 'long' for the return type.
As glibc provides no wrapper, use the same type the kernel uses.

......

$ grep -n wrapper man-pages/man2/subpage_prot.2
40:There is no glibc wrapper for this system call; see NOTES.
99:Glibc does not provide a wrapper for this system call; call it using

$ grep -rn SYSCALL_DEFINE.*subpage_prot linux/;
linux/arch/powerpc/mm/book3s64/subpage_prot.c:190:
SYSCALL_DEFINE3(subpage_prot, unsigned long, addr,

$ sed -n /SYSCALL.*subpage_prot/,/^}/p \
  linux/arch/powerpc/mm/book3s64/subpage_prot.c \
  |grep return;
		return -ENOENT;
		return -EINVAL;
		return -EINVAL;
		return 0;
		return -EFAULT;
			return -EFAULT;
	return err;

$ sed -n /SYSCALL.*subpage_prot/,/^}/p \
  linux/arch/powerpc/mm/book3s64/subpage_prot.c \
  |grep '\<err\>';
	int err;
			err = -ENOMEM;
		err = -ENOMEM;
	err = 0;
	return err;

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-28 09:56:37 +01:00
Michael Kerrisk c8efc05e6a spu_create.2: Clarify that spu_create() now has 4 arguments but once had only 3
Reported-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-27 11:15:14 +01:00
Michael Kerrisk c15912550f spu_create.2: Relocate paragraph on 'mode' argument
This paragraph is a little bit hidden at the end of DESCRIPTION;
make it a little more prominent.

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-27 11:05:44 +01:00
Michael Kerrisk 42c7a19c5f spu_create.2: Add kernel version numbers for SPU_CREATE_AFFINITY_SPU/_MEM
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-27 11:04:02 +01:00
Michael Kerrisk 7be45add14 spu_run.2: srcfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-27 10:05:38 +01:00
Michael Kerrisk 61d6b66a58 getpriority.2: wfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-27 09:29:12 +01:00
Michael Kerrisk fe2764329d getpriority.2: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-27 09:28:11 +01:00
Michael Kerrisk 373a3de56d link.2: ffix
Reported-by: Alejandro Colomar (man-pages) <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-26 13:52:15 +01:00
Mathias Rav 336be2e745 link.2: ERRORS: add ENOENT when target is deleted
Linux kernel commit aae8a97d3ec30788790d1720b71d76fd8eb44b73 (part
of kernel release v2.6.39) added a check to disallow creating a
hardlink to an unlinked file.

The manual page already describes the trick of using
AT_SYMLINK_FOLLOW as an alternative to AT_EMPTY_PATH, and for
AT_EMPTY_PATH the manual page already notes that it "will
generally not work if the file has a link count of zero". However,
the precise error (ENOENT) is not mentioned, and the error case
isn't mentioned in the ERRORS section at all.

This makes it easy to overlook the fact that the AT_SYMLINK_FOLLOW
trick on /proc/self/fd/NN won't work on deleted files, as
evidenced by the follow message (which turns up when googling
"linkat deleted ENOENT"):
https://groups.google.com/g/linux.kernel/c/zZO4lqqwp64

Signed-off-by: Mathias Rav <m@git.strova.dk>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-26 10:58:54 +01:00
Amir Goldstein af5a2ff87e fanotify.7: fix outdated description
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-26 10:33:37 +01:00
Michael Kerrisk 32a72b3e1b pivot_root.2: tfix
Reported-by: Davide Giorgio <davide@giorgiodavide.it>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-26 10:30:35 +01:00
Michael Kerrisk 6e94330a07 getrusage.2: Note that the 'vtimes' symbol exists only up to glibc 2.32
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-25 23:42:44 +01:00
Alejandro Colomar 36ded6fe89 set_tid_address.2: SYNOPSIS: Fix set_tid_address() return type
The Linux kernel uses 'pid_t' instead of 'long' for the return type.
As glibc provides no wrapper, use the same types the kernel uses.

$ sed -n 34,36p man-pages/man2/set_tid_address.2
.PP
.IR Note :
There is no glibc wrapper for this system call; see NOTES.

$ grep -rn 'SYSCALL_DEFINE.*set_tid_address' linux/
linux/kernel/fork.c:1632:
SYSCALL_DEFINE1(set_tid_address, int __user *, tidptr)

$ sed -n 1632,1638p linux/kernel/fork.c
SYSCALL_DEFINE1(set_tid_address, int __user *, tidptr)
{
	current->clear_child_tid = tidptr;

	return task_pid_vnr(current);
}

$ grep -rn 'task_pid_vnr(struct' linux/
linux/include/linux/sched.h:1374:
static inline pid_t task_pid_vnr(struct task_struct *tsk)

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-24 10:49:48 +01:00
Alejandro Colomar 701b2272cd restart_syscall.2: SYNOPSIS: Fix restart_syscall() return type
The Linux kernel uses 'long' instead of 'int' for the return type.
As glibc provides no wrapper, use the same types the kernel uses.

$ grep -rn 'SYSCALL_DEFINE.*(restart_syscall'
kernel/signal.c:2891:SYSCALL_DEFINE0(restart_syscall)

$ sed -n 2891,2895p kernel/signal.c
SYSCALL_DEFINE0(restart_syscall)
{
	struct restart_block *restart = &current->restart_block;
	return restart->fn(restart);
}

$ grep -rn 'struct restart_block {'
include/linux/restart_block.h:25:struct restart_block {

$ sed -n 25,56p include/linux/restart_block.h
struct restart_block {
	long (*fn)(struct restart_block *);
	union {
		/* For futex_wait and futex_wait_requeue_pi */
		struct {
			u32 __user *uaddr;
			u32 val;
			u32 flags;
			u32 bitset;
			u64 time;
			u32 __user *uaddr2;
		} futex;
		/* For nanosleep */
		struct {
			clockid_t clockid;
			enum timespec_type type;
			union {
				struct __kernel_timespec __user *rmtp;
				struct old_timespec32 __user *compat_rmtp;
			};
			u64 expires;
		} nanosleep;
		/* For poll */
		struct {
			struct pollfd __user *ufds;
			int nfds;
			int has_timeout;
			unsigned long tv_sec;
			unsigned long tv_nsec;
		} poll;
	};
};

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 22:52:30 +01:00
Michael Kerrisk d01ce2930f attributes.7: SEE ALSO: add signal-safety(7)
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 13:35:04 +01:00
Michael Kerrisk 9bc4ab60e6 lseek64.3: tfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 13:28:12 +01:00
Michael Kerrisk 6c9fd46b05 pthread_tryjoin_np.3: Note that pthread_timedjoin_np() uses CLOCK_REALTIME, but there's a bug
Learned from an email converasation with Mike Crowe, and
verified by experiment.

Reported-by: Mike Crowe <mac@mcrowe.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 10:32:03 +01:00
Michael Kerrisk bdcc471b64 standards.7: Add LFS (Large File Summit)
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 10:08:52 +01:00
Michael Kerrisk e0b19c5b50 lseek64.3: NOTES: describe the origin of lseek64() in LFS
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 10:01:25 +01:00
Michael Kerrisk 83f0bca3b1 lseek64.3: Remove sentence saying lseek64() is an alias for llseek()
As far as I can see, it is instead simply an alias for a
wrapper that calls _llseek(). Saying it's an alias for "llseek()"
seems confusing.

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 09:42:00 +01:00
Michael Kerrisk 50f5ae5389 lseek64.3: Remove section numbers from interface list
We're talking of a mix of wrapper functions and system calls
in this page. lseek() is both a system and a wrapper function,
and this page is mostly describing the wrapper

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 09:32:38 +01:00
Michael Kerrisk 522c24f1cb lseek64.3: wfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 09:31:01 +01:00
Michael Kerrisk 8369c0f737 lseek64.3: Minor clarifications
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 09:24:56 +01:00
Michael Kerrisk 90f1c92fd3 lseek64.3: srcfix: add some comments to remind myself of some details
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 07:26:52 +01:00
Michael Kerrisk 7c1a416d65 llseek.2: Point the reader to lseek64(3) for info about llseek(3)
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 07:18:43 +01:00
Michael Kerrisk 48a830d7c8 llseek.2: Note size of 'loff_t' type
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 07:11:13 +01:00
Michael Kerrisk eca874e183 lseek64.3: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 07:08:12 +01:00
Michael Kerrisk 62d506c7a2 getnameinfo.3: tfix
Reported-by: Sebastian Kirmayer <man-pages@kirmayer.eu>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 06:54:02 +01:00
Michael Kerrisk 1876c40aed lseek64.3: srcfix: Add a lore link to some background on these APIs
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-23 00:00:24 +01:00
Michael Kerrisk 5ef9b068ec getnameinfo.3: tfix
Reported-by: Sebastian Kirmayer <sebastian@kirmayer.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-22 23:56:03 +01:00
Michael Kerrisk 940a0979de llseek.2: Some mild rewriting to ease reading of the info in this page
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-22 07:34:56 +01:00
Alejandro Colomar e7ff75357d capget.2, execve.2, readv.2, socketpair.2, utime.2, utimensat.2, getloadavg.3, proc.5, mount_namespaces.7, unix.7: ffix
{.IR var [x]} -> {.I var[x]}

There were around 15 entries of the former,
and around 360 of the latter.

Found using:
$ grep -rn '^\.I[ |R].* \[.*\]' |sort

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-21 23:33:07 +01:00
Alejandro Colomar 6ff0e05d77 utmp.5: Oxford comma
Found using:
$ grep -rn '\\f., [^ ]*\\f. and' man?

I also updated the markup in that paragraph: \f -> .

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-21 22:26:16 +01:00
Jing Peng e2c751049c futex.2: tfix
In the comment of the example program, the peer blocks on fwait()
rather than fpost().

Signed-off-by: Jing Peng <pj.hades@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-21 22:25:21 +01:00
Michael Kerrisk fd97f2fe65 standards.7: Relocate the discussion on POSIX manual pages
Rather than mention these pages under the discussion of one
version of the standard, move that text to the end of the page,
where it is probably a little more obvious.

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-21 07:56:32 +01:00
Michael Kerrisk 978412f5c4 standards.7: Add URL for POSIX.1-2008/SUSv4
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-21 07:44:58 +01:00
Michael Kerrisk f89df02010 standards.7: Fix some URLs for locations of the standards
Reported-by: Rob Landley <rob@landley.net>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-21 07:44:36 +01:00
Michael Kerrisk 19b2538d4b clock_getres.2: Plae ERRORS in alphabetical order
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-21 06:49:25 +01:00
Michael Kerrisk 0b3f52d008 socket.7: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-19 10:41:47 +01:00
Michael Kerrisk b5638e2e06 socket.7: tfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-19 10:29:25 +01:00
Michael Kerrisk 6b3561b8e4 arch_prctl.2: wfix: "current thread" ==> "calling thread"
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-19 10:20:31 +01:00
Michael Kerrisk 7533c83d88 perf_event_open.2: tfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-18 23:39:00 +01:00
Michael Kerrisk 5ae2634dba perf_event_open.2: Minor tweaks
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-18 23:39:00 +01:00
Namhyung Kim 1e554f3e32 perf_event_open.2: Update man page with recent kernel changes
Signed-off-by: Namhyung Kim <namhyung@gmail.com>
[alx: ffix + tfix]
Cowritten-by:  Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>

Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Stephane Eranian <eranian@google.com>
Cc: Ian Rogers <irogers@google.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Song Liu <songliubraving@fb.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Vince Weaver <vincent.weaver@maine.edu>

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-18 22:58:20 +01:00