aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2024-11-17wcwidth.3: Rename function parameterAlejandro Colomar1-6/+6
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17fmod.3: ffixAlejandro Colomar1-1/+3
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17remquo.3: pfixAlejandro Colomar1-1/+1
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17time.1: ffixAlejandro Colomar1-1/+3
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17sscanf.3: wfixAlejandro Colomar1-1/+1
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17attributes.7: wfixAlejandro Colomar1-2/+2
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17syscalls.2: tfixAlejandro Colomar1-2/+2
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17time.1: ffixAlejandro Colomar1-1/+3
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Cc: "G. Branden Robinson" <branden@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17sscanf.3: tfixAlejandro Colomar1-1/+1
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17sched_get_priority_max.2: pfixAlejandro Colomar1-1/+1
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17sscanf.3: ffixAlejandro Colomar1-1/+1
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17man/: tfixAlejandro Colomar4-4/+4
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17scanf.3: pfixAlejandro Colomar1-1/+1
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17proc_pid_fd.5: ffixAlejandro Colomar1-1/+1
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Cc: "G. Branden Robinson" <branden@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17getrpcent_r.3: tfixAlejandro Colomar1-1/+1
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17memusage.1: ffixAlejandro Colomar1-1/+3
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17log1p.3: pfixAlejandro Colomar1-2/+2
Reported-by: Helge Kreutzmann <debian@helgefjell.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17listmount.2: Fix off-by-one bug in description about continuing the iterationJeff Layton1-1/+1
The "+1" is wrong, since the kernel already increments the last_id. Cc: Miklos Szeredi <miklos@szeredi.hu> Cc: Josef Bacik <josef@toxicpanda.com> Cc: Christian Brauner <brauner@kernel.org> Signed-off-by: Jeff Layton <jlayton@kernel.org> Message-ID: <20241113-main-v1-1-a6b738d56e55@kernel.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17printf.3: wfixKen Pizzini1-2/+5
Improve description of %a format. The description of the %a/%A specifiers in the printf(3) man page could stand some improvement. In particular, it is not clear from the current document what base is used for the "p±d" part of the format. It can be inferred from the nature of %a that the base should be a power of two. And it can be further inferred from the nature of hexadecimal floating-point literals in C (as specified by C99 and later) that the base must exactly be the number two, but it would be helpful for the printf(3) man page to state this explicitly. My first expectation when reading the man page was that the exponent would be taken in base 16; after experimentation my second thought was that it would be base FLT_RADIX (which is 2 on IEEE 754 floating-point systems, but 16 on S/390). Only by going back to the standard [1] could I determine that the exponent in p-notation must always be taken from a base of 2. Link: [1] POSIX.1-2024 <https://pubs.opengroup.org/onlinepubs/9799919799/functions/printf.html> Cc: Jonathan Wakely <jwakely@redhat.com> Signed-off-by: Ken Pizzini <ken@gnu.org> Message-ID: <b932f13642502e063ef139d57b8f3c496023bf4a.1731707666.git.ken@gnu.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-17printf.3: wfixKen Pizzini1-2/+2
Improve terminology in %a description The term "decimal point" does not technically apply when using bases other than 10; the more generic term is "radix point". Update the description of the a/A conversion specifier (i.e., for hexadecimal floating point output) in printf(3) to use this terminology. I do note that POSIX.1-2024 [1] does use the term "decimal-point character" here, but I still maintain that using "radix point" is a better term for that object in the %a description. (Confusingly, POSIX does refer to "radix character" in the descriptions of %f and %e, where reference to "decimal" instead of "radix" would actually make sense.) Link: [1] <https://pubs.opengroup.org/onlinepubs/9799919799/functions/printf.html> Signed-off-by: Ken Pizzini <ken@gnu.org> Message-ID: <db91cc6f-93cc-4e99-806c-7a8b86232848@vagg4fs7.msa.explicate.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-14lsearch.3: Dereference 'nmemb' pointerAlejandro Colomar1-2/+2
nmemb is a pointer, so it needs to be dereferenced to calculate the size of the array. Reported-by: Martin Uecker <uecker@tugraz.at> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-13pthread_cond_init.3: tfixAlejandro Colomar1-1/+1
Reported-by: Antti Antinoja <antti@c1.fi> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-13rtnetlink.7: Document struct ifa_cacheinfoAlex Henrie1-1/+18
struct ifa_cacheinfo contains the address's creation time, update time, preferred lifetime remaining, and valid lifetime remaining. Link: <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/linux/if_addr.h?h=v6.11#n60> Cc: <netdev@vger.kernel.org> Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> Message-ID: <20241111062205.207027-1-alexhenrie24@gmail.com> Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-13mremap.2: Update information about MREMAP_DONTUNMAP restrictionsAlex Henrie1-1/+7
Link: <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a4609387859f0281951f5e476d9f76d7fb9ab321> Cc: Brian Geffon <bgeffon@google.com> Cc: <linux-mm@kvack.org> Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> Message-ID: <20241111061139.206404-1-alexhenrie24@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-07CONTRIBUTING.d/lint: 'make build' does not build everything anymoreAlejandro Colomar1-2/+2
Fixes: 082547cb6fbb ("share/mk/: Reduce the work of 'make && make install'") Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06CONTRIBUTING.d/patches/patches: Patches should contain a description.Alejandro Colomar1-0/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06CONTRIBUTING.d/patches/patches: Minor tweaks after splitting the fileAlejandro Colomar1-10/+9
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06CONTRIBUTING.d/patches/sendmail: Add file documenting how to send patchesAlejandro Colomar2-48/+51
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06CONTRIBUTING.d/patches/base: Add file documenting the base commit of patch setsAlejandro Colomar2-3/+6
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06CONTRIBUTING.d/patches/range-diff: Add file documenting the range-diff ↵Alejandro Colomar2-31/+37
between patch revisions Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06CONTRIBUTING.d/patches/diff: Add file documenting the diff of a patchAlejandro Colomar2-4/+6
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06CONTRIBUTING.d/patches/description: Add file documenting the description of ↵Alejandro Colomar2-39/+55
a patch Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06CONTRIBUTING.d/patches/subject: Add file documenting the subject of a patchAlejandro Colomar2-21/+41
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06CONTRIBUTING.d/patches/patches: Move file into a subdirectoryAlejandro Colomar2-1/+1
This is in preparation of a split that will happen soon. The file has grown too much, and I will split it in smaller ones that cover different aspects of patches. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-06bind.2: move EADDRNOTAVAIL to general errorsPhilipp Takacs1-4/+4
EADDRNOTAVAIL is not a socket specific error Message-ID: <eee2fe5c6c3d6203e1e528a998b0de2c.philipp@bureaucracy.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-05fanotify_mark.2, fanotify.7: Update documentation of fanotify w.r.t fsidAmir Goldstein2-6/+32
Clarify the conditions for getting the -EXDEV and -ENODEV errors. Signed-off-by: Amir Goldstein <amir73il@gmail.com> Reviewed-by: Jan Kara <jack@suse.cz> Message-ID: <20241105144939.181820-1-amir73il@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-05pthread_cancel.3: tfixAlejandro Colomar1-1/+1
Reported-by: Jona Christopher Sahnwaldt <jcsahnwaldt@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-04scripts/bash_aliases: man_gitstaged(): Trim the dirname(1) only for files ↵Alejandro Colomar1-4/+4
within man/ I changed the behavior at some point to trim the dirname(1) for every file. However, that was mainly due to the inconvenience of not having a man/ directory. Also, I haven't been consistent with that behavior, and have been manually adding back the dirname(1), so let's bring back the old behavior --which is BTW still what the comment says it does--. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-04CONTRIBUTING.d/git: Specify format.thread=shallowAlejandro Colomar1-1/+1
Setting it to true is equivalent to "shallow", but set it explicitly. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03CONTRIBUTING.d/git: Recommend merge.verifySignatures=trueAlejandro Colomar1-0/+5
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03CONTRIBUTING.d/git: Sort alphabeticallyAlejandro Colomar1-6/+6
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03share/mk/: wsfixAlejandro Colomar6-8/+8
Add some spaces for readability and consistency. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03LICENSES/GPL-3.0-or-later.txt: Add license textAlejandro Colomar1-0/+232
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03share/mk/: lint-c: Skip some false positivesAlejandro Colomar2-0/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03etc/clang-tidy/config.yaml: -misc-include-cleanerAlejandro Colomar1-0/+1
We want to enable this warning again in the future, but for now it has too many false positives. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03etc/clang-tidy/config.yaml: -cppcoreguidelines-macro-to-enum, ↵Alejandro Colomar1-0/+2
-readability-avoid-nested-conditional-operator Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03man/: EXAMPLES: Fix includesAlejandro Colomar6-2/+6
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03pdfman.1: srcfixAlejandro Colomar1-1/+0
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03share/mk/: [un]install-bin: Add target to [un]install shell scriptsAlejandro Colomar4-2/+44
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03etc/shellcheck/shellcheckrc: disable=SC2250Alejandro Colomar1-0/+1
Adding braces unnecessarily adds noise and thus hurts readability. Ignore advice. === In src/bin/mansect line 23: -e '(?s)^\.SH ('"$s"')$(?:(?!^\.(lf 1|TH|SH) ).)*'; ^-- SC2250 (style): Prefer putting braces around variable references even when not strictly required. === Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03etc/shellcheck/shellcheckrc: disable=SC2016Alejandro Colomar1-0/+1
This triggers false positives with trivial PCRE2 regexes. === In src/bin/mansect line 23: -e '(?s)^\.SH ('"$s"')$(?:(?!^\.(lf 1|TH|SH) ).)*'; ^----------------------------^ SC2016 (info): Expressions don't expand in single quotes, use double quotes for that. === Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03etc/shellcheck/shellcheckrc: disable=SC2038Alejandro Colomar1-0/+1
We don't want to support arbitrary manual-page file names. === In src/bin/mansect line 17: find -H "$@" -not -type d \ ^-----------------------^ SC2038 (warning): Use -print0/-0 or -exec + to allow for non-alphanumeric filenames. === Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03share/mk/, etc/shellcheck/: lint-sh: Add target to lint shell scriptsAlejandro Colomar8-1/+84
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03src/bin/pdfman: Pipe to read(1) with lastpipeAlejandro Colomar1-1/+5
This is more readable than nested command substitution. We already require bash(1) for ${!#}, so we can abuse it a little bit more. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03src/bin/pdfman: Use command substitution instead of shell magicAlejandro Colomar1-1/+1
This is significantly more readable. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03src/bin/pdfman, scripts/bash_aliases, pdfman.1: Make pdfman a standalone ↵Alejandro Colomar3-11/+36
program, and add a manual page Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03scripts/bash_aliases: pdfman(): Don't have custom error messageAlejandro Colomar1-5/+0
Run man(1) transparently, and let it report the error. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03scripts/bash_aliases: pdfman(): Use -Tpdf directlyAlejandro Colomar1-3/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03scripts/bash_aliases: man_lsfunc(), man_lsvar(): Use pcre2grep(1) instead of ↵Alejandro Colomar1-3/+3
pcregrep(1) pcregrep(1) is obsolete. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03scripts/bash_aliases: man_lsfunc(), man_lsvar(): Use mansect(1)Alejandro Colomar1-39/+6
Remove the man_section() function, and call the mansect(1) program instead. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-03src/bin/mansect, mansect.1: Add program and its manual pageAlejandro Colomar2-0/+87
Preprocess with preconv(1). This doesn't process the pages in a significant way, and has the benefit that it writes the name of the pages in the output. Cc: "G. Branden Robinson" <branden@debian.org> Cc: Colin Watson <cjwatson@debian.org> Cc: <groff@gnu.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-01signal.7: Better description for SIGFPEVincent Lefevre1-1/+1
SIGFPE has comment "Floating-point exception", which corresponds to the FPE acronym. But this is misleading as this signal may also be generated by an integer division by 0. Change it to "Erroneous arithmetic operation" from POSIX. Note: the GNU C Library manual says "fatal arithmetic error". Link: <https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/signal.h.html> Link: <https://www.gnu.org/software/libc/manual/html_node/Program-Error-Signals.html> Signed-off-by: Vincent Lefevre <vincent@vinc17.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-01CONTRIBUTING.d/git: Recommend am.messageid=trueAlejandro Colomar1-0/+6
This is useful for maintainers. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-01CONTRIBUTING.d/patches: Documentation patches should be sent alongside the ↵Alejandro Colomar1-0/+20
features Link: <https://lwn.net/Articles/989380/> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Günther Noack <gnoack@google.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-01dup.2: ERRORS: Add ENOMEMLevi Zim1-0/+3
dup2(2) could return ENOMEM under extreme condition. For example, when sysctl fs.nr_open=2147483584, and RLIMIT_NOFILE is also 2147483584. The following program fails with ENOMEM: int main(void) { if (dup2(0, 2000000000) == -1) err(1, "dup2"); return 0; } This ENOMEM comes from an allocation error here: <https://elixir.bootlin.com/linux/v6.1/source/mm/util.c#L596> ENOMEM is already documented for open(2). Signed-off-by: Levi Zim <rsworktech@outlook.com> [alx: tweak commit message] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-11-01bind.2: ERRORS: Document possible errors from protocolLucas Culverhouse1-0/+2
When looking through the errors of socket(2) I noticed that it specifies the selected underlying protocol may extend the potential errors returned. For example, using AF_PACKET and SOCK_RAW can return EPERM if the user does not have CAP_NET_RAW or uid 0 (this is all fully documented). However, AF_PACKET and SOCK_RAW extend the potential errors returned from bind(2) as well. For example, calling bind(2) with an invalid sll_ifindex set on the sock_addr passed in will return ENODEV. While this possibility is documented in the raw(7) manual page, the bind(2) manual page does not mention that its potential set of errors can be extended by the underlying protocol. This patch simply duplicates the relevant language from the socket(2) manual page to the bind(2) manual page. It is possible further extensions for send(2), recv(2), setsockopt(2), etc. are also undocumented, but I have not yet verified this. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-09-08timespec_get.3, timespec_getres.3: Add page and link pageнаб2-0/+89
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Message-ID: <lacitlat2jwybavkgkmmsxfbzcbz532uihejn5k2boe2x5eyyy@tarta.nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-09-01console_codes.4, inode.7: srcfixG. Branden Robinson2-3/+7
Prepare for `MR` macro migration. Rewrite man page cross references inside tbl(1) text blocks to use man(7) macros instead of troff(1) font selection escape sequences. $ cat fix-man-page-refs-in-tbl-tables-1.sed # Rewrite man page cross references inside tbl(1) text blocks to use # man(7) macros instead of troff(1) font selection escape sequences. /^\.\\"/b # Case: (handled in commit 9d21f97766, 2024-07-27) # T{ # See \fBchown\fP(2) for # T} /T{$/,/^T}/s/ \\fB\([^\\]*\)\\fP\(([0-9][a-z]*)\) /\ .BR \1 \2\ / # Case: # T{ # the map that is loaded by the utility \fBmapscrn\fP(8). # T} /T{$/,/^T}/s/ \\fB\([^\\]*\)\\fP\(([0-9][a-z]*)\)\([^0-9a-z]\+\)$/\ .BR \1 \2\3/ # Case: # T{ # by \fBxterm\fP(1)'s \fBhpLowerleftBugCompat\fP resource). # T} /T{$/,/^T}/s/ \\fB\([^\\]*\)\\fP\(([0-9][a-z]*)\)\([^ ]\+\) \(.*\)/\ .BR \1 \2\3\ \4/ Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240901032603.khxdcqiqc2pxooky@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-09-01lirc.4: srcfixG. Branden Robinson1-1/+3
Prepare for `MR` macro migration. Migrate man page cross references in "SEE ALSO" section from using font selection escape sequences to font alternation macros to set man page cross references. This is an oddball case where `\-` appears in the man page title and, for no obvious reason, a nonbreaking space escape sequence was applied between list items. (I can _guess_ why: someone was trying to defeat line adjustment, and didn't notice that they were trying to do so right before a paragraph break, so adjustment wouldn't have happened anyway.) Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240901032556.mmrwd27rpr3zzb5s@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-09-01suffixes.7: srcfixG. Branden Robinson1-3/+15
Prepare for `MR` macro migration. Migrate man page cross references in table rows from using font selection escape sequences to font alternation macros to set man page cross references. These are a handful of cases that made a sed(1)-scripted migration ordering-dependent with its substitution ('s') commands. Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240901032548.olkeoqjwpj76h42b@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-09-01utmp.5: srcfixG. Branden Robinson1-4/+11
Prepare for `MR` macro migration. Migrate man page cross references in unfilled examples from using font selection escape sequences to font alternation macros to set man page cross references. Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240901032530.wrvbtb4wisgnkcns@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-09-01utmp.5: srcfixG. Branden Robinson1-1/+1
Set init(1) man page cross references like all the others in the page. Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240901032523.qsfzdca46pcr524f@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-09-01wctrans.3, wctype.3: srcfixG. Branden Robinson2-20/+22
Convert from unfilled text using `nf` and `fi` requests to `IP` macro calls and tbl(1) tables. This change increases the item indentation slightly, as I elected not to specify one in the `IP` calls. The content still fits easily in an 80-column terminal. The reason for this change is to make the man page cross references susceptible to scripted rewriting (and ultimately to make them hyperlinkable). See, e.g., <https://lore.kernel.org/linux-man/20240831182027.b6pduwkthk5b3tcf@illithid/>. Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240901032513.afty634vpnhe24zi@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-09-01namespaces.7: srcfixG. Branden Robinson1-4/+12
Use *roff requests to shut off adjustment and hyphenation for the rightmost column of the table, which uses text blocks. (In man pages, use of such requests _outside_ of tbl(1) text blocks remains discouraged by groff(1) and mandoc(1) developers.) Also break filled input lines less aggressively. Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240901032505.ralmc2yuwd4psgos@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-09-01namespaces.7: ffixG. Branden Robinson1-0/+2
Put a paragraph break above the table to ensure separation from the preceding paragraph with the man(7) macros from groff >= 1.23 and forthcoming mandoc(1) release. Draw a horizontal rule under the column headings. Link: <https://cvsweb.bsd.lv/mandoc/man_term.c?rev=1.241&content-type=text/x-cvsweb-markup> Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240901032453.3dmhjz7urk2saizq@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-31CONTRIBUTING.d/git: Recommend format.thread=trueAlejandro Colomar1-0/+4
This generates patch sets as threads, with a Message-ID pre-set for the first mail. Cc: "G. Branden Robinson" <branden@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-31namespaces.7: ffixG. Branden Robinson1-2/+2
Prepare for `MR` macro migration. Let the table columns breathe again. Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240831182057.u6mza33uhz55j3xd@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-31man/: srcfixG. Branden Robinson3-6/+6
Prepare for `MR` macro migration. Explicitly set the width of certain table columns so that they don't change or cause "can't break line" warnings from troff(1) when the rows are converted to use text blocks. Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240831182045.kvhjjxbztnhudjga@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-31man/: srcfixG. Branden Robinson2-62/+186
Prepare for `MR` macro migration. Migrate table entries from using font selection escape sequences to font alternation macros to set man page cross references. This change was automatically driven by the following sed(1) script. $ cat fix-man-page-refs-in-tbl-tables-2.sed # Rewrite man page cross references on tbl(1) rows that # precede text blocks to themselves use text blocks, # and convert them to use man(7) macros # instead of troff(1) font selection escape sequences # (which cannot be done outside a text block). /^\.\\"/b /^\\fB[^\\]*\\fP([0-9][a-z]*).*T{/s/\\fB\([^\\]*\)\\fP\(([0-9][a-z]*)\)\(.*\)/T{\ .BR \1 \2\ T}\3/ Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240831182027.b6pduwkthk5b3tcf@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-30tzset.3: CAVEATS: Document the inability of tzset() to report errorsAlejandro Colomar1-0/+3
NetBSD has tzalloc(3), which returns NULL to report invalid tme zones. Cc: Paul Eggert <eggert@cs.ucla.edu> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-30ctime.3: EXAMPLES: Document how to detect invalid or ambiguous timesAlejandro Colomar1-1/+77
This example documents how to detect some corner cases of mktime(3), such as DST transitions and other jumps in the calendar. Link: <https://www.redhat.com/en/blog/brief-history-mktime> Cc: DJ Delorie <dj@redhat.com> Cc: Carlos O'Donell <carlos@redhat.com> Cc: Paul Eggert <eggert@cs.ucla.edu> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-30ctime.3: CAVEATS: Add note about tm_isdst handling in mktime(3)DJ Delorie1-0/+39
Handling of "invalid" values for tm_isdst is not clearly specified in any standard, and implementations vary as to how they react when you (for example) pass tm_isdst=1 at a time when DST is not in effect. Add a note about this, and a suggestion for a workaround. I go into further detail about this in the link below. Link: <https://www.redhat.com/en/blog/brief-history-mktime> Cc: Paul Eggert <eggert@cs.ucla.edu> Cc: Carlos O'Donell <carlos@redhat.com> Signed-off-by: DJ Delorie <dj@redhat.com> Message-ID: <xncylqiznb.fsf@greed.delorie.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-29pipe.7: Document change to default pipe size when soft limit is exceededKienan Stewart1-1/+3
See Linux commit 46c4c9d1beb7f5b4cec4dd90e7728720583ee348 ("pipe: increase minimum default pipe size to 2 pages"). Cc: Alex Xu (Hello71) <alex_y_xu@yahoo.ca> Signed-off-by: Kienan Stewart <kstewart@efficios.com> Message-ID: <20240829204448.2027276-2-kstewart@efficios.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-29pipe.7: Reference potential lower default in "Pipe capacity" sub-sectionKienan Stewart1-0/+3
The default capacity of pipes is two pages for users exceeding the pipe-user-pages-soft limit. Before Linux 5.14, it was only one page. Signed-off-by: Kienan Stewart <kstewart@efficios.com> Message-ID: <20240829154304.2010305-2-kstewart@efficios.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-28dlinfo.3: Document the RTLD_DI_PHDR requestFlorian Weimer1-1/+14
First added in glibc 2.36, backported upstream to glibc 2.34, so mention 2.34.1 for the first version. Signed-off-by: Florian Weimer <fweimer@redhat.com> Message-ID: <87o75chpwb.fsf@oldenburg.str.redhat.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-28share/mk/: build-pdf-book: Rename book to "GNU/Linux Programmer's Manual"Alejandro Colomar2-2/+2
The manual pages in this project had historically used the 5th argument to TH, with the string "Linux Programmer's Manual". This was showed as the center-top title of the pages. This was incidentally consistent with the UNIX Programmer's Manual. A few years ago, I removed the 5th argument to TH to use the default string, to follow conventions. At the same time, I put the project name and version in the 4th argument to TH: "Linux man-pages X.Y". When we added the scripts written by Deri to produce a PDF book, the title of the book was "The Linux Manpage Book", and the front page said "GNU/Linux\nTHE MAN PAGES BOOK". For consistency with the project name, I changed those some time ago to be title: "The Linux man-pages Book" and front: "GNU/Linux\nTHE MAN-PAGES BOOK". However, for consistency with the UNIX Programmer's Manual, and with the old title used within the project, I'm now (partially) restoring the title of the book and its front page to be both: "GNU/Linux Programmer's Manual". (It's not fully restorative, because it has GNU/Linux where the old title had just Linux, but half of our documentation is for glibc, so I think it's deserved.) (I was never convinced by the old front text: why should it have the word "book"?) Cc: Douglas McIlroy <douglas.mcilroy@dartmouth.edu> Cc: "G. Branden Robinson" <branden@debian.org> Cc: Deri James <deri@chuzzlewit.myzen.co.uk> Cc: "Michael T. Kerrisk" <mtk.manpages@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-28statx.2: Document AT_EMPTY_PATH allows using NULL instead of "" for pathnameXi Ruoyao1-6/+13
Link: <https://git.kernel.org/torvalds/c/0ef625bba6fb> Cc: Mateusz Guzik <mjguzik@gmail.com> Cc: Christian Brauner <brauner@kernel.org> Cc: <linux-fsdevel@vger.kernel.org> Signed-off-by: Xi Ruoyao <xry111@xry111.site> Message-ID: <20240827102518.43332-2-xry111@xry111.site> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-27share/mk/: $CLANG_CFLAGS: -Wno-used-but-marked-unusedAlejandro Colomar1-1/+2
This diagnostic is triggered by valid calls to printf(3). Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-27splice.2: EXAMPLES: Add example programAlejandro Colomar1-1/+50
This example demonstrates the use of off_out, which the tee(2) example doesn't use. Here's a run of the program: $ gcc -Wall -Wextra splice.c $ ./a.out New offset is 22 $ echo $? 0 $ hd out 00000000 00 00 00 00 00 00 00 00 00 00 48 65 6c 6c 6f 2c |..........Hello,| 00000010 20 77 6f 72 6c 64 | world| 00000016 Link: <https://lore.kernel.org/linux-man/4xw464u2munxbgujopgfggxvnvgxa2b5lh35eriaeziapaa4uq@z6jmdim6f5mo/T/#t> Co-developed-by: Absee Seeab <doesnt.look.like.temp.mail@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-27splice.2: off_{in,out} are updated by splice(2)Alejandro Colomar1-1/+4
Link: <https://lore.kernel.org/linux-man/4xw464u2munxbgujopgfggxvnvgxa2b5lh35eriaeziapaa4uq@z6jmdim6f5mo/T/#t> Reported-by: Absee Seeab <doesnt.look.like.temp.mail@gmail.com> Co-developed-by: Absee Seeab <doesnt.look.like.temp.mail@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-27share/mk/: $CLANG_CFLAGS: -Wno-unreachable-codeAlejandro Colomar1-0/+1
The example program in ctime(3) triggers that diagnostic due to a compile-time check of the signedness of time_t. The code is legitimate. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-24ctime.3: Move NOTES to a subsection within CAVEATSAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-23ctime.3: Document how to check errors from mktime(3)Alejandro Colomar1-1/+103
-1 is a valid successful time_t, for one second before the Epoch. And mktime(3) is allowed (like most libc calls) to set errno on success. This makes it impossible to determine errors from the return value or errno. ISO C specifies that tp->tm_wday is unmodified after a failed call, and puts an example where this is used to determine errors. It is indeed the only way to check for errors from this call. Document this detail in the RETURN VALUE section, add a CAVEATS section that warns about this, and write an example program that shows how to properly call this function. Most code I've been able to find in several search engines either doesn't check for errors after mktime(3), or checks them incorrectly, so this documentation should help fix those. This is guaranteed since ISO C23 and POSIX.1-2024. Prior to those standards, there was no standard way to check for errors. However, there are no known implementations that do not conform to this. Link: <https://lore.kernel.org/linux-man/20240823131024.GD2713@cventin.lip.ens-lyon.fr/T/#t> Link: <https://lore.kernel.org/linux-man/6un6baaq5tez23irtycuvzqtuh7a4sdrf2px7tnyb3y6iqoxmq@2ofln4cd27ep/T/#t> Link: <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3147.txt> Link: <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3148.doc> Link: <https://austingroupbugs.net/view.php?id=1614> Link: <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3220.pdf#subsubsection.7.29.2.3> Reported-by: Paul Eggert <eggert@cs.ucla.edu> Cc: Vincent Lefevre <vincent@vinc17.net> Cc: DJ Delorie <dj@redhat.com> Cc: Carlos O'Donell <carlos@redhat.com> Cc: Xi Ruoyao <xry111@xry111.site> Cc: Brian Inglis <Brian.Inglis@SystematicSW.ab.ca> Cc: "Robert C. Seacord" <rcseacord@gmail.com> Cc: Jens Gustedt <jens.gustedt@inria.fr> Cc: Robert Elz <kre@munnari.oz.au> Cc: Andrew Josey <ajosey@opengroup.org> Cc: Geoff Clare <gwc@opengroup.org> Cc: Hans Åberg <haberg-1@telia.com> Cc: GNU C Library <libc-alpha@sourceware.org> Cc: Austin Group <austin-group-l@opengroup.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_*.2const: Make sashimiAlejandro Colomar26-1900/+2489
2024-08-21keyctl.2: Tweak after making sashimi of this pageAlejandro Colomar1-6/+5
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_RESTRICT_KEYRING.2const: Tweak after splitAlejandro Colomar1-44/+15
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_RESTRICT_KEYRING.2const: Split KEYCTL_RESTRICT_KEYRING from ↵Alejandro Colomar2-91/+140
keyctl(2) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_DH_COMPUTE.2const: Tweak after splitAlejandro Colomar1-81/+46
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_DH_COMPUTE.2const: Split KEYCTL_DH_COMPUTE from keyctl(2)Alejandro Colomar2-278/+317
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_GET_PERSISTENT.2const: Tweak after splitAlejandro Colomar1-39/+17
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_GET_PERSISTENT.2const: Split KEYCTL_GET_PERSISTENT from ↵Alejandro Colomar2-76/+122
keyctl(2) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_INVALIDATE.2const: Tweak after splitAlejandro Colomar1-25/+7
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_INVALIDATE.2const: Split KEYCTL_INVALIDATE from keyctl(2)Alejandro Colomar2-42/+89
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_SESSION_TO_PARENT.2const: Tweak after splitAlejandro Colomar1-32/+17
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_SESSION_TO_PARENT.2const: Split KEYCTL_SESSION_TO_PARENT ↵Alejandro Colomar2-60/+108
from keyctl(2) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_GET_SECURITY.2const: Tweak after splitAlejandro Colomar1-34/+16
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_GET_SECURITY.2const: Split KEYCTL_GET_SECURITY from keyctl(2)Alejandro Colomar2-62/+107
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_ASSUME_AUTHORITY.2const: Tweak after splitAlejandro Colomar1-31/+13
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_ASSUME_AUTHORITY.2const: Split KEYCTL_ASSUME_AUTHORITY from ↵Alejandro Colomar2-80/+125
keyctl(2) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_SET_TIMEOUT.2const: Tweak after splitAlejandro Colomar1-28/+10
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_SET_TIMEOUT.2const: Split KEYCTL_SET_TIMEOUT from keyctl(2)Alejandro Colomar2-47/+94
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_SET_REQKEY_KEYRING.2const: Tweak after splitAlejandro Colomar1-28/+8
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_SET_REQKEY_KEYRING.2const: Split KEYCTL_SET_REQKEY_KEYRING ↵Alejandro Colomar2-99/+144
from keyctl(2) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_INSTANTIATE.2const: Tweak after splitAlejandro Colomar1-77/+40
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_INSTANTIATE.2const, KEYCTL_INSTANTIATE_IOV.2const, ↵Alejandro Colomar5-170/+242
KEYCTL_NEGATE.2const, KEYCTL_REJECT.2const: Split KEYCTL_INSTANTIATE*, KEYCTL_NEGATE, KEYCTL_REJECT from keyctl(2) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_READ.2const: Tweak after splitAlejandro Colomar1-40/+15
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_READ.2const: Split KEYCTL_READ from keyctl(2)Alejandro Colomar2-75/+121
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_SEARCH.2const: Tweak after splitAlejandro Colomar1-42/+23
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_SEARCH.2const: Split KEYCTL_SEARCH from keyctl(2)Alejandro Colomar2-79/+125
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_UNLINK.2const: Tweak after splitAlejandro Colomar1-30/+9
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_UNLINK.2const: Split KEYCTL_UNLINK from keyctl(2)Alejandro Colomar2-39/+88
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_LINK.2const: Tweak after splitAlejandro Colomar1-38/+11
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_LINK.2const: Split KEYCTL_LINK from keyctl(2)Alejandro Colomar2-68/+117
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_CLEAR.2const: Tweak after splitAlejandro Colomar1-22/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_CLEAR.2const: Split KEYCTL_CLEAR from keyctl(2)Alejandro Colomar2-32/+79
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_DESCRIBE.2const: Tweak after splitAlejandro Colomar1-36/+17
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_DESCRIBE.2const: Split KEYCTL_DESCRIBE from keyctl(2)Alejandro Colomar2-88/+133
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_SETPERM.2const: Tweak after splitAlejandro Colomar1-86/+103
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_SETPERM.2const: Split KEYCTL_SETPERM from keyctl(2)Alejandro Colomar2-215/+262
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_CHOWN.2const: Tweak after splitAlejandro Colomar1-29/+9
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_CHOWN.2const: Split KEYCTL_CHOWN from keyctl(2)Alejandro Colomar2-45/+91
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_REVOKE.2const: Tweak after splitAlejandro Colomar1-19/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_REVOKE.2const: Split KEYCTL_REVOKE from keyctl(2)Alejandro Colomar2-35/+80
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_UPDATE.2const: Tweak after splitAlejandro Colomar1-34/+12
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_UPDATE.2const: Split KEYCTL_UPDATE from keyctl(2)Alejandro Colomar2-43/+90
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_JOIN_SESSION_KEYRING.2const: Tweak after splitAlejandro Colomar1-26/+7
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_JOIN_SESSION_KEYRING.2const: Split ↵Alejandro Colomar2-52/+96
KEYCTL_JOIN_SESSION_KEYRING from keyctl(2) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21KEYCTL_GET_KEYRING_ID.2const: Tweak after splitAlejandro Colomar1-42/+21
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2, KEYCTL_GET_KEYRING_ID.2const: Split KEYCTL_GET_KEYRING_ID from ↵Alejandro Colomar2-120/+165
keyctl(2) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21keyctl.2: Tweak in preparation for sashimiAlejandro Colomar1-14/+5
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21bdflush.2, syscalls.2: bdflush was removedнаб2-79/+28
There's no point documenting this syscall at any point in time, because it changed constantly. A post-mortem summary I believe to be comprehensive is included below. The #include <sys/kdaemon.h> was removed in glibc 2.23: commit eed3e1eb79bcfa9b52609fd875fa2d522e2d6bce Author: Joseph Myers <joseph@codesourcery.com> Date: Mon Dec 14 22:52:15 2015 +0000 Make obsolete syscall wrappers into compat symbols (bug 18472). * bdflush: in Linux 2.6, does nothing if present. [...] generated for such aliases. Those five syscalls are then made into compat symbols (obsoleted in glibc 2.23, so future ports won't have these symbols at all), with the header <sys/kdaemon.h> declaring bdflush being removed. When we move to 3.2 as minimum kernel version, the same can be done for nfsservctl (removed in Linux 3.1) as well. [...] Appears in 1.1.3 (func=0 turns the calling process into the bdflush daemon, func=1 return sync_old_buffers();, func>=2 is parameters): Author: Linus Torvalds <torvalds@linuxfoundation.org> Import 1.1.3 +/* This is the interface to bdflush. As we get more sophisticated, we can + * pass tuning parameters to this "process", to adjust how it behaves. If you + * invoke this again after you have done this once, you would simply modify + * the tuning parameters. We would want to verify each parameter, however, + * to make sure that it is reasonable. */ + +asmlinkage int sys_bdflush(int func, int data) +{ bdflush() is just a kernel thread, and func 0 is just return 0; since 1.3.50: Author: Linus Torvalds <torvalds@linuxfoundation.org> Import 1.3.50 - /* Basically func 0 means start, 1 means read param 1, 2 means write param 1, etc */ + /* Basically func 1 means read param 1, 2 means write param 1, etc */ if (func >= 2) { i = (func-2) >> 1; if (i < 0 || i >= N_PARAM) @@ -1930,13 +1845,32 @@ asmlinkage int sys_bdflush(int func, long data) bdf_prm.data[i] = data; return 0; }; + + /* Having func 0 used to launch the actual bdflush and then never + return (unless explicitly killed). We return zero here to + remain semi-compatible with present update(8) programs. */ + + return 0; +} + +/* This is the actual bdflush daemon itself. It used to be started from + * the syscall above, but now we launch it ourselves internally with + * kernel_thread(...) directly after the first thread in init/main.c */ + +int bdflush(void * unused) { func 1 is actually exit(0) since 2.3.23pre1: Author: Linus Torvalds <torvalds@linuxfoundation.org> Import 2.3.23pre1 if (func == 1) { + /* do_exit directly and let kupdate to do its work alone. */ + do_exit(0); +#if 0 /* left here as it's the only example of lazy-mm-stuff used from + a syscall that doesn't care about the current mm context. */ fund!=0 is a return 0 since 2.5.12: Author: Andrew Morton <akpm@zip.com.au> Date: Mon Apr 29 23:52:10 2002 -0700 [PATCH] writeback from address spaces [ I reversed the order in which writeback walks the superblock's dirty inodes. It sped up dbench's unlink phase greatly. I'm such a sleaze ] The core writeback patch. Switches file writeback from the dirty buffer LRU over to address_space.dirty_pages. - The buffer LRU is removed - The buffer hash is removed (uses blockdev pagecache lookups) - The bdflush and kupdate functions are implemented against address_spaces, via pdflush. [...] Deprecated since 2.5.52: Author: Andrew Morton <akpm@digeo.com> Date: Sat Dec 14 03:16:29 2002 -0800 [PATCH] deprecate use of bdflush() Patch from Robert Love <rml@tech9.net> We can never get rid of it if we do not deprecate it - so do so and print a stern warning to those who still run bdflush daemons. Removed outright in 5.15-rc1: commit b48c7236b13cb5ef1b5fdf744aa8841df0f7b43a Author: Eric W. Biederman <ebiederm@xmission.com> Date: Tue Jun 29 15:11:44 2021 -0500 exit/bdflush: Remove the deprecated bdflush system call The bdflush system call has been deprecated for a very long time. Recently Michael Schmitz tested[1] and found that the last known caller of of the bdflush system call is unaffected by it's removal. Since the code is not needed delete it. [1] https://lkml.kernel.org/r/36123b5d-daa0-6c2b-f2d4-a942f069fd54@gmail.com Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Message-ID: <ynknns52cczu2bxtazbmub3xxe62a2hajkod2qephnby5dqt7o@tarta.nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21uretprobe.2: Add pageJiri Olsa1-0/+47
Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Masami Hiramatsu <mhiramat@kernel.org> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Alexei Starovoitov <ast@kernel.org> Cc: Daniel Borkmann <daniel@iogearbox.net> Cc: Song Liu <songliubraving@fb.com> Cc: Yonghong Song <yhs@fb.com> Cc: John Fastabend <john.fastabend@gmail.com Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: "Borislav Petkov (AMD)" <bp@alien8.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: Andy Lutomirski <luto@kernel.org> Cc: "Edgecombe, Rick P" <rick.p.edgecombe@intel.com> Cc: Deepak Gupta <debug@rivosinc.com> Acked-by: Andrii Nakryiko <andrii@kernel.org> Reviewed-by: Alejandro Colomar <alx@kernel.org> Signed-off-by: Jiri Olsa <jolsa@kernel.org> Message-ID: <20240611112158.40795-10-jolsa@kernel.org> [alx: minor tweaks] Acked-by: Jiri Olsa <jolsa@kernel.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21regex.3: *preg is initialized with regcomp(), not regexec()Dirk Gouders1-1/+1
Fixes: 1838a55edd6c47cb ("regex.3: Desoupify regexec() description") Signed-off-by: Dirk Gouders <dirk@gouders.net> Message-ID: <20240813185011.3806-1-dirk@gouders.net> Reviewed-by: наб <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21syscalls.2: Expand the Notes column to the right marginнаб1-1/+1
This prevents rows breaking when they could just go further to the right Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Message-ID: <qruxkxy2wtmmaohagimcanhyoyfvmtzn3zmbasxqsgn5tvjfgc@tarta.nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21fmod.3: Fix exampleAlejandro Colomar1-1/+1
Reported-by: Morten Welinder <mwelinder@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21nextup.3: wfix + tfixVincent Lefevre1-3/+4
The current "If x is 0" condition is a bit misleading because "is" is not the equality test (just like when saying "x is NaN") and 0 as a FP number stands for +0, while this condition should apply to both -0 and +0. Replace this condition by "If x is +0 or -0". Replace "Nan" by "NaN" (typography used everywhere else). Cc: Dave Kemper <saint.snit@gmail.com> Cc: "G. Branden Robinson" <branden@debian.org> Cc: Damian McGuckin <damianm@esi.com.au> Cc: John Gardner <gardnerjohng@gmail.com> Signed-off-by: Vincent Lefevre <vincent@vinc17.net> Message-ID: <20240808115610.GC2669@cventin.lip.ens-lyon.fr> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21sigaction.2: Improve wording and add an example in the BUGS sectionMikołaj Kołek1-1/+17
This patch clears up the wording of the first part of the BUGS section of the sigaction(2) manual page. Currently, it is very unclear when exactly the bug can occur, and there is no example, which I aim to fix. The text of the patch is partially based on the BUGS section of the signal(2) manual page. I also attach a C program that, when run on an x86 Linux computer, shows that my example behaves like I say it does. The code runs the int instruction for each value from 0 to 255 with all registers set to 0 to show that all fields of the siginfo_t besides si_signo and si_code equal zero. The program is based on the attachment to bug 205831 on the kernel bugtracker which first dealt with this issue, which you can find here: <https://bugzilla.kernel.org/show_bug.cgi?id=205831>. This is the code of the test program: #define CR "\n\t" #define _GNU_SOURCE 1 #include <stdbool.h> #include <signal.h> #include <stdint.h> #include <stdio.h> static siginfo_t siginfo; void handler(int sig, siginfo_t *info, void *ucontext) { ucontext_t *uc = (ucontext_t*) ucontext; const uint8_t *pc = (const uint8_t*) uc->uc_mcontext.gregs[REG_RIP]; siginfo = *info; // skip the faulting instruction if(*pc == 0xCC || *pc == 0xF1) uc->uc_mcontext.gregs[REG_RIP] += 1; else if(*pc == 0xCD) uc->uc_mcontext.gregs[REG_RIP] += 2; else ; //assume the PC has already been advanced over the fault } static __attribute__((noinline)) void call_int(unsigned char argument) { asm volatile( "leaq 1f(%%rip), %%rcx" CR "addq %%rcx, %%rax" CR "xor %%rbx, %%rbx" CR "xor %%rcx, %%rcx" CR "xor %%rdx, %%rdx" CR "xor %%rsi, %%rsi" CR "xor %%rdi, %%rdi" CR "xor %%rbp, %%rbp" CR "xor %%r8, %%r8" CR "xor %%r9, %%r8" CR "xor %%r10, %%r10" CR "xor %%r11, %%r11" CR "xor %%r12, %%r12" CR "xor %%r13, %%r13" CR "xor %%r14, %%r14" CR "xor %%r15, %%r15" CR "call *%%rax" CR "jmp 2f" CR ".p2align 3" "\n1:" CR ".irp i,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15" CR ".irp j,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15" CR "xor %%rax, %%rax" CR ".byte 0xCD,(\\i*16 + \\j)" CR "ret" CR ".p2align 3" CR ".endr" CR ".endr" "\n2:" : : "a" (argument * 8) : "rbx", "rcx", "rdx", "rsi", "rdi", "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15" ); } int main(void) { struct sigaction sa = { 0 }; sa.sa_sigaction = &handler; sa.sa_flags = SA_SIGINFO | SA_RESTART; sigaction(SIGSEGV, &sa, 0); sigaction(SIGTRAP, &sa, 0); for(int i = 0; i < 256; i++) { call_int(i); bool others_zeroed = ( siginfo.si_errno == 0 && siginfo.si_pid == 0 && siginfo.si_uid == 0 && siginfo.si_status == 0 && siginfo.si_utime == 0 && siginfo.si_stime == 0 && siginfo.si_value.sival_ptr == 0 && siginfo.si_value.sival_int == 0 && siginfo.si_int == 0 && siginfo.si_ptr == 0 && siginfo.si_overrun == 0 && siginfo.si_timerid == 0 && siginfo.si_addr == 0 && siginfo.si_band == 0 && siginfo.si_fd == 0 && siginfo.si_addr_lsb == 0 && siginfo.si_lower == 0 && siginfo.si_upper == 0 && siginfo.si_pkey == 0 && siginfo.si_call_addr == 0 && siginfo.si_syscall == 0 && siginfo.si_arch == 0 ); printf("int $0x%02x: sig=%2d code=%04x others_zeroed=%i\n", i, siginfo.si_signo, siginfo.si_code, others_zeroed ); } return 0; } Link: <https://bugzilla.kernel.org/show_bug.cgi?id=205831> Cc: Zack Weinberg <zackw@panix.com> Cc: Andy Lutomirski <luto@kernel.org> Cc: Borislav Petkov <bp@alien8.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Signed-off-by: Mikołaj Kołek <kolek.mikolaj@gmail.com> Message-ID: <CAHGiy69OQ78x42+6iE7HqAiOaPCscn8fs=VNaxFMNSR7Q9R-mw@mail.gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21tzset.3: srcfix (semantic newlines)Alejandro Colomar1-2/+3
Reported-by: Vincent Lefevre <vincent@vinc17.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21epoll.7: Clarify the event distribution under edge-triggered modeAndy Pan1-1/+2
For the moment, the edge-triggered epoll generates an event for each receipt of a chunk of data, that is to say, epoll_wait() will return and tell us a monitored file descriptor is ready whenever there is a new activity on that FD since we were last informed about that FD. This is not a real _edge_ implementation for epoll, but it's been working this way for years and plenty of projects are relying on it to eliminate the overhead of one system call of read(2) per wakeup event. There are several renowned open-source projects relying on this feature for notification function (with eventfd): register eventfd with EPOLLET and avoid calling read(2) on the eventfd when there is wakeup event (eventfd being written). Examples: nginx [1], netty [2], tokio [3], libevent [4], ect. [5] These projects are widely used in today's Internet infrastructures. Thus, changing this behavior of epoll ET will fundamentally break them and cause a significant negative impact. Linux has changed it for pipe before [6], breaking some Android libraries, which had got "reverted" somehow. [7] [8] Nevertheless, the paragraph in the manual pages describing this characteristic of epoll ET seems ambiguous, I think a more explict sentence should be used to clarify it. We're improving the notification mechanism for libuv recently by exploiting this feature with eventfd, which brings us a significant performance boost. [9] Therefore, we (as well as the maintainers of nginx, netty, tokio, etc.) would have a sense of security to build an enhanced notification function based on this feature if there is a guarantee of retaining this implementation of epoll ET for the backward compatibility in the man pages. [1]: https://github.com/nginx/nginx/blob/efc6a217b92985a1ee211b6bb7337cd2f62deb90/src/event/modules/ngx_epoll_module.c#L386-L457 [2]: https://github.com/netty/netty/pull/9192 [3]: https://github.com/tokio-rs/mio/blob/309daae21ecb1d46203a7dbc0cf4c80310240cba/src/sys/unix/waker.rs#L111-L143 [4]: https://github.com/libevent/libevent/blob/525f5d0a14c9c103be750f2ca175328c25505ea4/event.c#L2597-L2614 [5]: https://github.com/libuv/libuv/pull/4400#issuecomment-2123798748 [6]: https://lkml.iu.edu/hypermail/linux/kernel/2010.1/04363.html [7]: https://github.com/torvalds/linux/commit/3a34b13a88caeb2800ab44a4918f230041b37dd9 [8]: https://github.com/torvalds/linux/commit/3b844826b6c6affa80755254da322b017358a2f4 [9]: https://github.com/libuv/libuv/pull/4400#issuecomment-2103232402 Signed-off-by: Andy Pan <i@andypan.me> Cc: <linux-api@vger.kernel.org> Cc: Michael Kerrisk <mtk.manpages@gmail.com> Message-ID: <20240801-epoll-et-desc-v5-1-7fcb9260a3b2@andypan.me> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21landlock.7: Document Landlock ABI version 5 (IOCTL)Günther Noack1-3/+50
Landlock ABI 5 restricts ioctl(2) on device files. Closes: <https://github.com/landlock-lsm/linux/issues/39> Reviewed-by: Mickaël Salaün <mic@digikod.net> Signed-off-by: Günther Noack <gnoack@google.com> Message-ID: <20240723101917.90918-3-gnoack@google.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-08-21landlock.7, landlock_*.2: Document Landlock ABI version 4Günther Noack3-15/+94
Landlock ABI 4 restricts bind(2) and connect(2) on TCP port numbers. The intent is to bring the man pages mostly in line with the kernel documentation again. I intentionally did not add networking support to the usage example in landlock.7 - I feel that in the long run, we would be better advised to maintain longer example code in the kernel samples. Closes: <https://github.com/landlock-lsm/linux/issues/32> Reviewed-by: Mickaël Salaün <mic@digikod.net> Signed-off-by: Günther Noack <gnoack@google.com> Message-ID: <20240723101917.90918-2-gnoack@google.com> Co-developed-by: Konstantin Meskhidze <konstantin.meskhidze@huawei.com> Signed-off-by: Konstantin Meskhidze <konstantin.meskhidze@huawei.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-31syscalls.2: srcfix (2/3)G. Branden Robinson1-65/+195
Migrate table entries from using font selection escape sequences to font alternation macros to set man page cross references. This change was automatically driven by the following sed(1) script. $ cat fix-syscall-table-2.sed \# Rewrite man page cross references on tbl(1) rows that precede text \# blocks to themselves use text blocks, and convert them to use man(7) \# macros instead of troff(1) font selection escape sequences (which \# cannot be done outside a text block). /^\.\\"/b /^\\fB[^\\]*\\fP([0-9][a-z]*).*T{/s/\\fB\([^\\]*\)\\fP\(([0-9][a-z]*)\)\(.*\)/T{\ .BR \1 \2\ T}\3/ Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240727192752.hxxo4nl52qyskb2u@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-31syscalls.2: srcfix (1/3)G. Branden Robinson1-3/+9
Migrate table entries from using font selection escape sequences to font alternation macros to set man page cross references. This change was automatically driven by the following sed(1) script. $ cat fix-syscall-table-1.sed \# Rewrite man page cross references inside tbl(1) text blocks to use \# man(7) macros instead of troff(1) font selection escape sequences. /^\.\\"/b /T{$/,/^T}/s/ \\fB\([a-z0-9_][a-z0-9_]*\)\\fP\(([0-9][a-z]*)\) /\ .BR \1 \2\ / Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Message-ID: <20240727192745.lt2oo34hw3limkls@illithid> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-31memccpy.3: Clarify that the delimiter is copiedAlejandro Colomar1-1/+3
Reported-by: Keith Thompson <Keith.S.Thompson@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-31io_submit.2: Document RWF_ATOMICJohn Garry1-0/+19
Document RWF_ATOMIC for asynchronous I/O. Reviewed-by: "Darrick J. Wong" <djwong@kernel.org> Signed-off-by: John Garry <john.g.garry@oracle.com> Cc: <linux-fsdevel@vger.kernel.org> Cc: Jens Axboe <axboe@kernel.dk> Cc: Christoph Hellwig <hch@lst.de> Cc: Dave Chinner <dchinner@redhat.com> Cc: "Martin K. Petersen" <martin.petersen@oracle.com> Message-ID: <20240722095723.597846-4-john.g.garry@oracle.com> [alx: wfix; ffix] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-31readv.2: Document RWF_ATOMIC flagHimanshu Madhani1-0/+65
Add RWF_ATOMIC flag description for pwritev2(). Signed-off-by: Himanshu Madhani <himanshu.madhani@oracle.com> [jpg: complete rewrite] Signed-off-by: John Garry <john.g.garry@oracle.com> Cc: <linux-fsdevel@vger.kernel.org> Cc: Jens Axboe <axboe@kernel.dk> Cc: Christoph Hellwig <hch@lst.de> Cc: Dave Chinner <dchinner@redhat.com> Cc: "Martin K. Petersen" <martin.petersen@oracle.com> Message-ID: <20240722095723.597846-3-john.g.garry@oracle.com> Reviewed-by: Darrick J. Wong <djwong@kernel.org> [alx: semantic newlines; srcfix] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-31statx.2: Document STATX_WRITE_ATOMICHimanshu Madhani1-0/+28
Add the text to the statx man page. Signed-off-by: Himanshu Madhani <himanshu.madhani@oracle.com> Reviewed-by: "Darrick J. Wong" <djwong@kernel.org> Signed-off-by: John Garry <john.g.garry@oracle.com> Cc: <linux-fsdevel@vger.kernel.org> Cc: Jens Axboe <axboe@kernel.dk> Cc: Christoph Hellwig <hch@lst.de> Cc: Dave Chinner <dchinner@redhat.com> Cc: "Martin K. Petersen" <martin.petersen@oracle.com> Message-ID: <20240722095723.597846-2-john.g.garry@oracle.com> [alx: ffix] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-23man/: ffixAlejandro Colomar936-944/+944
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-23strsep.3: Use CAVEATS instead of BUGSAlejandro Colomar1-1/+1
These are not bugs at all. It's a good API. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-23strsep.3: HISTORY: Relax portability concernsAlejandro Colomar1-3/+0
We already document that it's a BSD function, not in any standard. No need to worry programmers much more than that. We have STANDARDS for that. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-23strsep.3: STANDARDS: It's available in the BSDs (as it originated there)Alejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-22landlock_add_rule.2: ERRORS: Document missing reason for EINVALGünther Noack1-0/+10
This documents a missing reason for why EINVAL might be returned. The documented behavior exists since the first version of Landlock. Reviewed-by: Mickaël Salaün <mic@digikod.net> Signed-off-by: Günther Noack <gnoack@google.com> Message-ID: <20240719133801.3541732-5-gnoack@google.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-22landlock_create_ruleset.2: Update docs for landlock_ruleset_attrGünther Noack1-2/+32
This updates the documentation for struct landlock_ruleset_attr in line with the changed kernel documentation (see link below). Link: <https://lore.kernel.org/all/20240711165456.2148590-2-gnoack@google.com/> Reviewed-by: Mickaël Salaün <mic@digikod.net> Signed-off-by: Günther Noack <gnoack@google.com> Message-ID: <20240719133801.3541732-4-gnoack@google.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-22landlock.7, landlock_*.2: wfixGünther Noack4-12/+20
* Various wording fixes * List the same error code multiple times, if it can happen for multiple reasons. Reviewed-by: Mickaël Salaün <mic@digikod.net> Signed-off-by: Günther Noack <gnoack@google.com> Message-ID: <20240719133801.3541732-3-gnoack@google.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-22fanotify_init.2: Support for FA_* flags has been backported to LTS kernelsChuck Lever1-4/+4
Cc: <linux-fsdevel@vger.kernel.org> Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Message-ID: <20240713181548.38002-3-cel@kernel.org> Reviewed-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-22fanotify.7: Document changes backported to LTS kernelsChuck Lever1-1/+1
Cc: <linux-fsdevel@vger.kernel.org> Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Message-ID: <20240713181548.38002-4-cel@kernel.org> Reviewed-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-22fanotify_mark.2: Support for FA_* flags has been backported to LTS kernelsChuck Lever1-4/+4
Cc: <linux-fsdevel@vger.kernel.org> Reviewed-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Message-ID: <20240713181548.38002-2-cel@kernel.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-22listmount.2: Add pageJosef Bacik1-0/+116
Cc: Christian Brauner <brauner@kernel.org> Cc: Miklos Szeredi <mszeredi@redhat.com> Cc: <linux-fsdevel@vger.kernel.org> Cc: <kernel-team@fb.com> Signed-off-by: Josef Bacik <josef@toxicpanda.com> Message-ID: <2d72a44fa49f47bd7258d7efb931926b26de4004.1720549824.git.josef@toxicpanda.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-22share/mk/: Skip expected warningsAlejandro Colomar2-0/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-22prctl.2: Add PR_RISCV_SET_ICACHE_FLUSH_CTXCharlie Jenkins2-0/+155
Document the PR_RISCV_SET_ICACHE_FLUSH_CTX flag for prctl(2) that is supported as of Linux 6.10. Cc: Alexandre Ghiti <alexghiti@rivosinc.com> Signed-off-by: Charlie Jenkins <charlie@rivosinc.com> Message-ID: <20240709-fencei_prctl-v5-1-a0391069f746@rivosinc.com> [alx: ffix + consistent line breaks] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20share/mk/: Silence spurious warningsAlejandro Colomar1-0/+2
Those write(2) calls are unimportant, and we don't want to check errors. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20shm_open.3: EXAMPLES: Add missing error handlingAlejandro Colomar1-2/+4
Reported-by: gcc(1) (`make build-ex-cc`) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20getutent.3: EXAMPLES: Add missing error handlingAlejandro Colomar1-5/+11
Reported-by: gcc(1) (`make build-ex-cc`) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20pipe.2: EXAMPLES: Add missing error handlingAlejandro Colomar1-17/+23
Reported-by: gcc(1) (`make build-ex-cc`) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20perf_event_open.2: EXAMPLES: Add missing error handlingAlejandro Colomar1-9/+13
GCC now enables -Wunused-result by default. Reported-by: gcc(1) (`make build-ex-cc`) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20share/mk/: Silence spurious warningsAlejandro Colomar2-1/+5
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20share/mk/: Reduce the work of 'make && make install'Alejandro Colomar3-4/+11
Distros expect 'make' to build only what they need. While we want to build more stuff upstream, for various reasons (mainly, for extra diagnostics), packagers only want what they'll use, and don't want to waste CPU time with that. Also, distros expect 'make install' to only install what they'll use, which is just the manual pages. For that, repurpose the build and install targets to do precisely that, and add build-all and install-all targets that do all that can be done. Reported-by: Sam James <sam@gentoo.org> Signed-off-by: Alejandro Colomar <alx@kernel.org> Cherry-picked-from: liba2i.git 791f163b1a72 (2024-07-18, "share/mk/: Reduce the work of 'make && make install'") Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20share/mk/: CPPFLAGS: Only define _FORTIFY_SOURCE if it's not already definedAlejandro Colomar1-3/+18
Some distros patch GCC to have that definition built in. Redefining it ourselves would result in a redefinition, and consequently a diagnostic. Reported-by: Sam James <sam@gentoo.org> Signed-off-by: Alejandro Colomar <alx@kernel.org> Cherry-picked-from: liba2i.git 31bfd8f14a11 (2024-07-17, "share/mk/: CPPFLAGS: Only define _FORTIFY_SOURCE if it's not already defined") Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20share/mk/, share/tests/: Refactor *FLAGS and LDLIBS variablesAlejandro Colomar55-95/+95
Standard behavior is that setting these variables should append, not overwrite. Add variables to allow overwriting, with a trailing '_'. While at it, put CPPFLAGS after CFLAGS consistently (previously, there was a mix). Link: <https://lists.gnu.org/archive/html/help-make/2024-07/msg00001.html> Reported-by: Sam James <sam@gentoo.org> Reported-by: Đoàn Trần Công Danh <congdanhqx@gmail.com> Suggested-by: Sébastien Hinderer <Sebastien.Hinderer@inria.fr> Suggested-by: Paul Smith <psmith@gnu.org> Signed-off-by: Alejandro Colomar <alx@kernel.org> Cherry-picked-from: liba2i.git 5613b2846104 (2024-07-16, "share/mk/, share/tests/: Refactor *FLAGS and LDLIBS variables") Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20share/mk/: CPPFLAGS: -D_FORTIFY_SOURCE=2Alejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org> Cherry-picked-from: liba2i.git 828dd1d21b30 (2024-07-15, "share/mk/: CPPFLAGS: -D_FORTIFY_SOURCE=2") Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-20share/mk/: CosmeticAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-12landlock_*.2: Mention -1 return code on failurePetr Vorel3-0/+12
Mention -1 return code on failure for landlock_add_rule(2), landlock_create_ruleset(2) and landlock_restrict_self(2). Although it's a common rule to return -1 on error, it's better to be explicit (as the other man pages are). Fixes: a01d04a69 ("landlock_add_rule.2: Document new syscall") Fixes: ca5163697 ("landlock_create_ruleset.2: Document new syscall") Fixes: 3f7e4f808 ("landlock_restrict_self.2: Document new syscall") Reviewed-by: Günther Noack <gnoack@google.com> Cc: Mickaël Salaün <mic@linux.microsoft.com> Cc: Mickaël Salaün <mic@digikod.net> Cc: <linux-security-module@vger.kernel.org> Signed-off-by: Petr Vorel <pvorel@suse.cz> Message-ID: <20240712172246.151258-2-pvorel@suse.cz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-12man/: RETURN VALUE: Unify error wordingPetr Vorel8-10/+10
Follow the pattern to replace "to indicate the cause of the error" with "to indicate the error". Suggested-by: Alejandro Colomar <alx@kernel.org> Acked-by: Günther Noack <gnoack@google.com> Cc: Mickaël Salaün <mic@linux.microsoft.com> Cc: Mickaël Salaün <mic@digikod.net> Signed-off-by: Petr Vorel <pvorel@suse.cz> Message-ID: <20240712172246.151258-1-pvorel@suse.cz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-12fnmatch.3: Update FNM_CASEFOLD availability, FNM_IGNORECASE aliasнаб1-3/+11
Every system I looked at already had FNM_CASEFOLD, so calling it "GNU" is misleading at best; Solaris (and the illumos gate) call it FNM_IGNORECASE but also provide FNM_CASEFOLD as an alias. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Message-ID: <2lnvud6qnttulm34ns3lsrafguzrdjdgnnnp4yrlsdl6c2yoef@tarta.nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-10utime.2: ERRORS: Add EFAULTMa Xinjian1-0/+4
Signed-off-by: Ma Xinjian <maxj.fnst@fujitsu.com> Message-ID: <20240710081926.10913-1-maxj.fnst@fujitsu.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-10sigaction.2: setitimer(2)/alarm(2) timers yield si_code=SI_TIMER tooнаб1-1/+12
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Message-ID: <z3bixugjnrhlcli53tmdogma7op7uwstwlitgl7u4mmyqfs3pc@tarta.nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-09statmount.2: Add pageJosef Bacik1-0/+283
Cc: Christian Brauner <brauner@kernel.org> Cc: Miklos Szeredi <mszeredi@redhat.com> Cc: <linux-fsdevel@vger.kernel.org> Cc: <kernel-team@fb.com> Signed-off-by: Josef Bacik <josef@toxicpanda.com> Message-ID: <5b4a8408a21970d0ee4bea5cee4c74cb39851c0d.1720549824.git.josef@toxicpanda.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-09printf.3: the overall syntax is "%argnum$...", not "%$..."наб1-1/+1
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Message-ID: <atyx4os7275jhfsrnblyr6ykxwghjzdpdnvnrvxcskei7kbb6n@tarta.nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-09FIONREAD.2const: tfixGünther Noack1-1/+1
Fix a copy-paste error in SYNOPSIS: FIONREAD was mentioned twice, but another IOCTL was missing. Fixes: c6267fb68309 ("ioctl_tty.2, FIONREAD.2const, TIOC{IN,OUT}Q.2const, TCFLSH.2const, TIOCSERGETLSR.2const: Split from ioctl_tty(2)") Signed-off-by: Günther Noack <gnoack@google.com> Message-ID: <20240705142844.1142998-1-gnoack@google.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-09clone.2: ffixMa Xinjian1-2/+2
Signed-off-by: Ma Xinjian <maxj.fnst@fujitsu.com> Message-ID: <20240704064108.27257-1-maxj.fnst@fujitsu.com> [alx: Remove comment] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-09__riscv_flush_icache.3, riscv_flush_icache.2: Add page (and link page)Charlie Jenkins2-0/+50
riscv_flush_icache() has been present in syscall.2, but had no page for itself. Add the page for this syscall. The syscall is named riscv_flush_icache(), but the glibc function is named __riscv_flush_icache(). To handle this, name the syscall page riscv_flush_icache.2 and point to the libc page __riscv_flush_icache.3. Signed-off-by: Charlie Jenkins <charlie@rivosinc.com> Message-ID: <20240701-flush_icache-v2-1-15f7a35a0d13@rivosinc.com> [alx: ffix] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-09perf_event_open.2: Document combining inherit and cpus = -1 preventing the ↵Mikołaj Kołek1-0/+4
use of mmap After calling perf_event_open() with cpus == -1 and the inherit bit, using mmap on the perf file descriptor to create a ring-buffer fails with EINVAL. This behavior wasn't previously documented in the man page and is caused by the following lines in the perf_mmap function in <kernel/events/core.c>: /* * Don't allow mmap() of inherited per-task counters. This would * create a performance issue due to all children writing to the * same rb. */ if (event->cpu == -1 && event->attr.inherit) return -EINVAL; Signed-off-by: Mikołaj Kołek <kolek.mikolaj@gmail.com> Message-ID: <CAHGiy6-nx0PwBi6xwoG8PN5qND-krGh_rvpfmVc31-QSv04C6g@mail.gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-07-09fmod.3: EXAMPLES: Fix calculationAlejandro Colomar1-1/+1
Fixes: ce23e8188f8f ("fmod.3: Add example section") Closes: <https://bugzilla.kernel.org/show_bug.cgi?id=219017> Reported-by: Benjamin Otte <otte@gnome.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-06-28printf.3: Rework 'наб1-14/+19
As it stands, this is worse than useless (defined as: I had to test it explicitly against strfmon() and look at POSIX myself to make sure the manual wasn't lying to me https://101010.pl/@nabijaczleweli/112694726416515899): No-one cares if some compiler doesn't understand something from 1994. (Careful readers will note it's been 30 years.) "SUSv2 doesn't have this, SUSv3 does" is reefer-induced: this figures in SUSv1 (XPG Issue 4 Version 2) and the CHANGE HISTORY clearly notes ' was added in i4, not i4v2. It's important that these aren't actually grouped by the thousand, but, instead, by "what the locale says". Each locale has two groupings: monetary and non-monetary, and it's paramount to indicate which is which (hi_IN is 3,2... monetary and 3... non-monetary; mjw_IN is 3,2... both). It waxes poetic for way too long about "how to set a locale". Also replace "The Single UNIX Specification adds" with "POSIX adds". The SUS is, on a good day, a profile of POSIX you pay 300$ for. Maybe you could swing this back when it was an "extension" (so, only required in the SUS profile) but it's just shaded CX ("this is intentionally different from C") in Issue 8. It's really irrelevant here. Also add this to HISTORY (and call it something sane there; the Proper nomenclature is absolutely meaningless to normal people). The most important bit for every HISTORY reader is the 1994 date. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Message-ID: <o2vchme4dchemjo4diziac5rlmhtsaze2yi72fzo5r67umlwny@tarta.nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-06-28wcscasecmp.3, wcsncasecmp.3: Mergeнаб2-123/+29
This mirrors str[n]casecmp and is much more useful, but more importantly these didn't crosslink at all. The RETURN VALUE section is now copied from strncasecmp.3. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Message-ID: <wr4xqnhilpx7yszqxcggo7scpt3bnrfha3ohfs6uxwibhfafel@tarta.nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-06-28proc_sysrq-trigger.5: ffixAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-06-28statx.2: Document STATX_SUBVOLKent Overstreet1-0/+12
Document the new statx.stx_subvol field. This would be clearer if we had a proper API for walking subvolumes that we could refer to, but that's still coming. Link: https://lore.kernel.org/linux-fsdevel/20240308022914.196982-1-kent.overstreet@linux.dev/ Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev> [jpg: mention supported FSes and formatting improvements] Signed-off-by: John Garry <john.g.garry@oracle.com> Cc: Eric Biggers <ebiggers@kernel.org> Cc: <linux-fsdevel@vger.kernel.org> Message-ID: <20240620130017.2686511-1-john.g.garry@oracle.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-06-28man/: ffix (Use TQ where appropriate)Alejandro Colomar11-21/+63
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-06-28man2/: ffixAlejandro Colomar2-6/+3
Put the subsection title in the .SS line. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-06-28statx.2: Document STATX_MNT_ID_UNIQUEJosef Bacik1-2/+12
Linux 6.8 added STATX_MNT_ID_UNIQUE support. Link: <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=98d2b43081972> Signed-off-by: Josef Bacik <josef@toxicpanda.com> Cc: Christian Brauner <brauner@kernel.org> Cc: Miklos Szeredi <mszeredi@redhat.com> Cc: <linux-fsdevel@vger.kernel.org> Cc: <kernel-team@fb.com> Message-ID: <a45b2623a25357f33978b49963dad5f99b984386.1719341580.git.josef@toxicpanda.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>