Commit Graph

21376 Commits

Author SHA1 Message Date
Alejandro Colomar 3996bc9c26 timer_create.2: Cast to 'unsigned long' rather than 'long' when printing with "%lx"
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 11:33:20 +02:00
Alejandro Colomar c9e2544b17 request_key.2: Cast to 'unsigned long' rather than 'long' when printing with "%lx"
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 09:51:12 +02:00
Alejandro Colomar 53de137678 add_key.2: Cast to 'unsigned long' rather than 'long' when printing with "%lx"
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 09:50:32 +02:00
Alejandro Colomar 1656c1702d getpwent_r.3: Use sizeof() to get buffer size (instead of hardcoding macro name)
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 09:17:50 +02:00
Alejandro Colomar cf254328fe getgrent_r.3: Use sizeof() to get buffer size (instead of hardcoding macro name)
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 09:17:45 +02:00
Alejandro Colomar 6da4ee9147 membarrier.2: Note that glibc does not provide a wrapper
Notes: I copied .nf and .fi from futex.2, but they made no visual difference.
What do they actually do?

Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 08:44:48 +02:00
Alejandro Colomar 9a84e3383f get_phys_pages.3: Write 'long' instead of 'long int'
For consistency.

Most man pages use 'long' instead of 'long int'.

Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 08:43:37 +02:00
Alejandro Colomar 4e4e6e5e14 getpwent_r.3: Declare variables with different types in different lines
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 08:43:14 +02:00
Alejandro Colomar b8c40f8946 aio.7: Use perror() directly
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 08:42:46 +02:00
Alejandro Colomar e85fd9034f loop.4: ffix
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 08:42:26 +02:00
Alejandro Colomar 2bbfed1b16 offsetof.3: Use "%zu" rather than "%zd" when printing 'size_t' values
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 08:41:18 +02:00
Michael Kerrisk 288d42bc37 rtnetlink.7: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:42:55 +02:00
Michael Kerrisk 10c2b377e5 readlink.2: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:33:34 +02:00
Michael Kerrisk 50dc2db4eb rtnetlink.7: tfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:32:56 +02:00
Michael Kerrisk 1bad27850d rtnetlink.7: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:31:50 +02:00
Michael Kerrisk a6c679521b locale.7: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:24:36 +02:00
Michael Kerrisk 6feb8aa967 fuse.4: srcfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:23:41 +02:00
Michael Kerrisk cb540eb3fc fuse.4: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:22:16 +02:00
Michael Kerrisk c97d0132a0 spu_create.2: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:20:48 +02:00
Michael Kerrisk 712d2fa586 copy_file_range.2: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:19:38 +02:00
Michael Kerrisk 4190ca0ab3 ioctl_userfaultfd.2: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-11 07:19:04 +02:00
Jakub Wilk a99abf87e2 dlopen.3, gnu_get_libc_version.3: tfix
Escape hyphens.

Signed-off-by: Jakub Wilk <jwilk@jwilk.net>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-10 12:40:34 +02:00
Jakub Wilk 98939695b6 loop.4: tfix
Signed-off-by: Jakub Wilk <jwilk@jwilk.net>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-10 12:40:18 +02:00
Michael Kerrisk ea4cec5f87 dlopen.3: Clarify DT_RUNPATH/DT_RPATH details
It is the DT_RUNPATH/DT_RPATH of the calling object (not the
executable) that is relevant for the library search. Verified
by experiment.

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-10 11:48:08 +02:00
Michael Kerrisk 4f247e780f getopt.3: Minor wording fix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-10 09:35:27 +02:00
Michael Kerrisk 75f2a1b866 loop.4: Minor edits to Yang Xu's patch
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-10 08:11:48 +02:00
Yang Xu b4557e3bcf loop.4: Add some details about lo_flags
Signed-off-by: Yang Xu <xuyang2018.jy@cn.fujitsu.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-10 08:11:10 +02:00
Michael Kerrisk 61958467fb loop.4: Minor tweaks to Yang Xu's patch
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-09 15:09:47 +02:00
Yang Xu 06df754f52 loop.4: Document LOOP_CONFIGURE ioctl
Signed-off-by: Yang Xu <xuyang2018.jy@cn.fujitsu.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-09 15:05:26 +02:00
Michael Kerrisk e38283d738 msgop.2: Minor tweak's to Yang Xu's patch
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-09 14:23:57 +02:00
Yang Xu ab365f43e7 msgop.2: Add restriction on ENOSYS error
When calling msgrcv() with the MSG_COPY flag, it will report
EINVAL error even we if have disabled CONFIG_CHECKPOINT_RESTORE.
ENOSYS will be reported only if we also specify the IPC_NOWAIT
flag.

[mtk: edited commit message]

Notes from mtk:

The relevant kernel code is this:

[[
#ifdef CONFIG_CHECKPOINT_RESTORE
...
#else
static inline struct msg_msg *prepare_copy(void __user *buf, size_t bufsz)
{
        return ERR_PTR(-ENOSYS);
}

...
static long do_msgrcv(int msqid, void __user *buf, size_t bufsz, long
msgtyp, int msgflg,
               long (*msg_handler)(void __user *, struct msg_msg *, size_t))
{
...
        if (msgflg & MSG_COPY) {
                if ((msgflg & MSG_EXCEPT) || !(msgflg & IPC_NOWAIT))
                        return -EINVAL;
                copy = prepare_copy(buf, min_t(size_t, bufsz, ns->msg_ctlmax));
...
}
]]

We'll only hit the ENOSYS error if:
(1) MSG_COPY was specified;
(2) IPC_NOWAIT was not specified; and
(3) CONFIG_CHECKPOINT_RESTORE was not enabled.

Signed-off-by: Yang Xu <xuyang2018.jy@cn.fujitsu.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-09 14:19:44 +02:00
Michael Kerrisk c3e8ceb883 proc.5: Note "open file description" as (better) synonym for "file handle"
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-09 12:09:56 +02:00
Michael Kerrisk f1e030a9c9 loop.4: wfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-09 11:08:41 +02:00
Michael Kerrisk e30e023de2 loop.4: Minor tweaks to Yang Xu's patch
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-09 11:06:01 +02:00
Yang Xu 2c45b62ea4 loop.4: Document LO_FLAGS_DIRECT_IO flag
Signed-off-by: Yang Xu <xuyang2018.jy@cn.fujitsu.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-09 11:05:39 +02:00
Mike Frysinger 4e0df17fce posix_spawn.3: tfix
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-08 07:29:33 +02:00
Alejandro Colomar b33535f535 bsearch.3: Declare variables with different types in different lines
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-08 07:26:00 +02:00
Alejandro Colomar 037c6fd4ee pthread_getattr_np.3: Use "%zu" and "%zx" when printing 'size_t' values
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-07 22:21:52 +02:00
Alejandro Colomar a3eeca342d fopencookie.3: Fix bugs in example
fread(3), unlike read(2) which returns a ssize_t, returns a
size_t.  It doesn't distinguish between error and enf-of-file.
Instead, either ferror(3) or feof(3) need to be checked if fread()
returned 0.

Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-07 12:32:03 +02:00
Alejandro Colomar a1eb1a6a33 fopencookie.3: printf()'s .* expects an int; cast accordingly
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-07 12:31:10 +02:00
Michael Kerrisk 7497e9d8c8 errno.3: Note that the pthreads APIs do not set errno
Reported-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-07 11:21:06 +02:00
Michael Kerrisk f9a5e57925 pthreads.7: Explicitly note that pthreads APIs return an errno-style value on error
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-07 11:11:30 +02:00
Alejandro Colomar 0ca5f06155 getline.3: Use %zd rather than %zu when printing 'ssize_t' values
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-07 11:00:05 +02:00
Alejandro Colomar 29a95ad159 hcreate.3: Declare variables with different types in different lines
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-07 10:59:47 +02:00
Michael Kerrisk 836a5bbf02 open.2: ERRORS: EBUSY
An EBUSY error case is mentioned in DESCRIPTIOn; add it to ERRORS
also.

See also https://bugzilla.kernel.org/show_bug.cgi?id=209109

Reported-by: henrik@optoscale.no
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-07 09:26:02 +02:00
Michael Kerrisk 51c1b1031b dlopen.3: Revert accidentally applied "dlopen.3: Remove unneeded cast"
This reverts commit ffa50fbf01.
2020-09-06 16:58:45 +02:00
Alejandro Colomar 9ba82f225c qsort.3: Fix casts
`p1` (and `p2` too) is `const void *` and it comes from a
`const char **` (for legacy reasons, argv is not `const` but should be
treated as if it were).  That means, the ultimate `char` is `const`:
"a pointer to a pointer to a const char".

Let's see what is going on before the fix first, and then the fix.

Before the fix:

`(char *const *)` (I removed the space on purpose) casts `p1` to be
"a pointer to a const pointer to a non-const char".  That's clearly
not what it originally was.

Then we dereference, ending with a `char *const`, which is
"a const pointer to a non-const char".  But given that the pointer value
is passed to a function, `const` doesn't make sense there, because the
function will already take a copy of it, so it is impossible to modify
the pointer itself.

The fix:

`(const char **)` The only thing that is const is the ultimate `char`,
which is the only thing that matters, because it is the only thing
strcmp(3) has access to (everything else, i.e. the pointers, are
copies).

Then, after the dereference we end up with `const char *`, the type of
argv (more or less, as previously noted), which is also the type of the
arguments to strcmp(3).

Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-06 14:58:37 +02:00
Alejandro Colomar 684130db5c bsearch.3: Fix intermediate type and remove unneeded casts
Casting `const void *` to `struct mi *` should result in a warning if
done implicitly.  The explicit cast was probably silencing that warning.
`const` can and should be kept.
Now, casting `const void *` to `const struct mi *` is done implicitly.

Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-06 14:58:29 +02:00
Alejandro Colomar dc0bba35e7 user_namespaces.7: Remove unneeded cast
Casting `void *` to `struct child_args *` is already done implicitly.
Explicitly casting can silence warnings when mistakes are made, so it's
better to remove those casts when possible.

Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-06 14:58:13 +02:00
Alejandro Colomar 180698be28 msgop.2: Remove unneeded casts
The type `struct msgbuf *` is implicitly casted to `const void *`.
Not only that, but the explicit cast to `void *` was slightly
misleading.
Explicitly casting can silence warnings when mistakes are made, so it's
better to remove those casts when possible.

Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-09-06 14:57:59 +02:00