aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
3 dayslsm: wsfixHEADmasterAlejandro Colomar1-1/+1
Fixes: 6071a7a5b697 ("man-pages 1.65") Reported-by: Aaron Schrab <aaron@schrab.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
3 daysRELEASE: Add command to send lsm fileAlejandro Colomar1-1/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
3 daysStart of man-pages-NEXT: Move Changes to Changes.oldAlejandro Colomar2-87/+124
Signed-off-by: Alejandro Colomar <alx@kernel.org>
3 dayslsm: Released 6.8Alejandro Colomar1-3/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
3 daysChanges: Ready for 6.8man-pages-6.8Alejandro Colomar1-11/+90
Signed-off-by: Alejandro Colomar <alx@kernel.org>
3 dayspthread_*.3: ffixAlejandro Colomar4-17/+30
Signed-off-by: Alejandro Colomar <alx@kernel.org>
3 daysproc.5: ffixAlejandro Colomar1-1/+0
Fixes: dd465607bc58 ("proc.5: Document 'subset' mount option.") Signed-off-by: Alejandro Colomar <alx@kernel.org>
5 daysproc.5: Document 'subset' mount option.Matteo Croce1-1/+7
The 'subset=pid' option was added in commit 6814ef2d, document it. This option mounts a procfs where only the numeric directories related to the PIDs are present. # mount -t proc proc_pid pid -o subset=pid # mount |grep -w proc_pid proc_pid on /tmp/proc/pid type proc (rw,relatime,subset=pid) # ll -d pid/{1,$$,cmdline,version} ls: cannot access 'pid/cmdline': No such file or directory ls: cannot access 'pid/version': No such file or directory dr-xr-xr-x. 9 root root 0 May 14 09:43 pid/1 dr-xr-xr-x. 9 root root 0 May 14 09:43 pid/25146 The only non-numeric entries in that procfs instance are 'self' and 'thread-self': # ls pid |grep -vx '[[:digit:]]*' self thread-self # Cc: "G. Branden Robinson" <branden@debian.org> Signed-off-by: Matteo Croce <teknoraver@meta.com> Message-ID: <20240514202819.95347-1-technoboy85@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
8 daysstring_copying.7: Document strndup(3)Alejandro Colomar1-0/+42
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-08elf.5, ld.so.8: Undeprecate DT_RPATH; explain DT_RPATH vs DT_RUNPATHJoachim Wuttke2-3/+2
In elf.5 and ld.so.8, remove deprecation of DT_RPATH In elf.5, amend the description of DT_RUNPATH and DT_RPATH. Rationale: There is no credible path towards removal of DT_RPATH. Lots of software depend on DT_RPATH as is. It is used e.g. for testing and in binary installers. Cc: Joseph Myers <josmyers@redhat.com> Cc: Mike Frysinger <vapier@gentoo.org> Cc: <bug-binutils@gnu.org> Signed-off-by: Joachim Wuttke <j.wuttke@fz-juelich.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-06share/mk/: distcheck: Run 'check' after 'build'Alejandro Colomar1-2/+5
In this project, it doesn't matter, but in some cases, it's useful that check doesn't imply build, such as in liba2i.git. Cherry-picking this change reduces differences in build systems. Signed-off-by: Alejandro Colomar <alx@kernel.org> Cherry-picked-from: liba2i.git 7246995b3464 ("share/mk/: distcheck: 'check' must be run after 'build'") Link: <https://git.kernel.org/pub/scm/libs/liba2i/liba2i.git/> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-05share/mk/: $LD: Fix definition to include $CPPFLAGSAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org> Cherry-picked-from: liba2i.git ecc5ea650c45 ("share/mk/: $LD: Fix definition to include $CPPFLAGS") Link: <https://git.kernel.org/pub/scm/libs/liba2i/liba2i.git/> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-04CONTRIBUTING.d/*: Add instructions for configuring git(1) for this projectAlejandro Colomar2-21/+46
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-03locale_t.3type: Add pageAlejandro Colomar1-0/+43
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-03mbsinit.3, mbstate_t.3type: Split page into one for the type and one for the ↵Alejandro Colomar2-50/+90
function Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-03wint_t.3type: Add pageAlejandro Colomar1-0/+56
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-03wchar_t.3type: Add pageAlejandro Colomar1-0/+48
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-02share/mk/: lint-c-iwyu: Add exceptionAlejandro Colomar1-0/+1
Link: <https://github.com/include-what-you-use/include-what-you-use/pull/1533> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-02man/: EXAMPLES: Add missing includesAlejandro Colomar24-0/+25
Link: <https://github.com/include-what-you-use/include-what-you-use/pull/1283> Link: <https://github.com/include-what-you-use/include-what-you-use/pull/1344> Reported-by: iwyu(1) (`make lint-c-iwyu`) Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-02etc/cppcheck/cppcheck.suppress: Add unusedStructMemberAlejandro Colomar1-0/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-02share/mk/: $CPPCHECKFLAGS: Add --check-level=exhaustiveAlejandro Colomar1-0/+1
This avoids warnings of the form: ...: information: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. [normalCheckLevelMaxBranches] Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-05-02man/, share/mk/: Move man*/ to man/Alejandro Colomar2713-3/+15
This is a scripted change: $ mkdir man/; $ mv man* man/; $ ln -st . man/man*; $ find share/mk/ -type f \ | xargs grep -l '^MANDIR *:=' \ | xargs sed -i '/^MANDIR *:=/s,$,/man,'; $ find share/mk/dist/ -type f \ | xargs grep -l man \ | xargs sed -i 's,man%,man/%,g'; Link: <https://lore.kernel.org/linux-man/YxcV4h+Xn7cd6+q2@pevik/T/> Cc: Petr Vorel <pvorel@suse.cz> Cc: Jakub Wilk <jwilk@jwilk.net> Cc: Stefan Puiu <stefan.puiu@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-30CONTRIBUTING.d/patches: Please provide a git-range-diff(1)Alejandro Colomar1-0/+30
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-30CONTRIBUTING.d/patches: Add git-send-email(1) configuration for To and CcAlejandro Colomar1-0/+7
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-29CONTRIBUTING.d/mail: Recommend specific mutt(1) configAlejandro Colomar1-0/+6
We want protected headers too. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-29mount_setattr.2: Update supported file-systemsRodrigo Campos1-0/+12
Let's update the list with the latest file-systems that added support. You can easily verify this by "git grep FS_ALLOW_IDMAP" on the given Linux version to see that the fs is listed and then checkout the previous Linux version to see that it is not listed, therefore it was added in that version. $ diff -w -U0 \ <(git grep FS_ALLOW_IDMAP v6.8 | sed 's/^v6.8://') \ <(git grep FS_ALLOW_IDMAP v6.9-rc4 | sed 's/^v6.9-rc4://') \ | tail -n+4; +fs/hugetlbfs/inode.c: .fs_flags = FS_ALLOW_IDMAP, $ diff -w -U0 \ <(git grep FS_ALLOW_IDMAP v6.6 | sed 's/^v6.6://') \ <(git grep FS_ALLOW_IDMAP v6.7 | sed 's/^v6.7://') \ | tail -n+4; +fs/ceph/super.c: .fs_flags = FS_RENAME_DOES_D_MOVE | FS_ALLOW_IDMAP, $ diff -w -U0 \ <(git grep FS_ALLOW_IDMAP v6.2 | sed 's/^v6.2://') \ <(git grep FS_ALLOW_IDMAP v6.3 | sed 's/^v6.3://') \ | tail -n+4; +mm/shmem.c: .fs_flags = FS_USERNS_MOUNT | FS_ALLOW_IDMAP, $ diff -w -U0 \ <(git grep FS_ALLOW_IDMAP v6.1 | sed 's/^v6.1://') \ <(git grep FS_ALLOW_IDMAP v6.2 | sed 's/^v6.2://') \ | tail -n+4; +fs/squashfs/super.c: .fs_flags = FS_REQUIRES_DEV | FS_ALLOW_IDMAP, Signed-off-by: Rodrigo Campos <rodrigo@sdfg.com.ar> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-27CONTRIBUTING.d/: Clarify how to send patches with git-send-email(1)Alejandro Colomar2-9/+26
Cc: Simon Barth <simon.barth@gmx.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-26share/mk/: build-html: Don't build mbind.2 and set_mempolicy.2Alejandro Colomar1-0/+2
They have known warnings. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-26slist.3: wfixSimon Barth1-1/+1
This page is about singly linked lists, not doubly linked lists. Signed-off-by: Simon Barth <simon.barth@gmx.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-26man2/: Add MPOL_WEIGHTED_INTERLEAVE documentationSvetly Todorov3-3/+43
Add documentation for the new MPOL_WEIGHTED_INTERLEAVE mode in the same manual pages that mention MPOL_INTERLEAVE; namely, mbind(2), set_mempolicy(2), and get_mempolicy(2). Descriptions were based on the changes introduced in this patch: <https://lore.kernel.org/all/20240202170238.90004-4-gregory.price@memverge.com/> Which was upstreamed to 6.9 here: <https://lore.kernel.org/linux-mm/20240313200532.34e4cff216acd3db8def4637@linux-foundation.org/> Cc: gregory.price@memverge.com Reviewed-by: "Huang, Ying" <ying.huang@intel.com> Signed-off-by: Svetly Todorov <svetly.todorov@memverge.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-26strchr.3: HISTORY: strchrnul(3) is present in FreeBSD and NetBSDAlejandro Colomar1-1/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-26open.2: protected_* sysctls are defined in proc_sys_fs(5), not proc(5)Emanuele Torre1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-19share/mk/: Fix includesAlejandro Colomar1-3/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-19share/mk/: Split makefilesAlejandro Colomar6-41/+87
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-19share/mk/: build-fonts-tinos: Build TinosR from TinosR.afmAlejandro Colomar4-3528/+26
And use a consistent name for it: TinosR, not TINOR. This removes the last remaining huge generated file we had in the repository. Link: <https://technicallywewrite.com/2023/09/16/addfonts> Link: <https://www.schaffter.ca/mom/momdoc/appendices.html#fonts> Cc: Jan Eden <tech@eden.one> Cc: "G. Branden Robinson" <branden@debian.org> Cc: Deri James <deri@chuzzlewit.myzen.co.uk> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-19share/mk/: build-fonts-tinos: Build TinosR.afm from Tinos-Regular.ttfAlejandro Colomar3-3/+37
This will allow generating the font description file from it, which will be done in the next commit. Link: <https://technicallywewrite.com/2023/09/16/addfonts> Link: <https://www.schaffter.ca/mom/momdoc/appendices.html#fonts> Cc: Jan Eden <tech@eden.one> Cc: "G. Branden Robinson" <branden@debian.org> Cc: Deri James <deri@chuzzlewit.myzen.co.uk> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-18share/mk/: Remove unused variableAlejandro Colomar1-1/+0
Co-developed-by: Deri James <deri@chuzzlewit.myzen.co.uk> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-17share/mk/: build-fonts: Use $FONTSDIR/devpdf/, and add the download fileAlejandro Colomar6-5/+32
See gropdf(1). Reported-by: Deri <deri@chuzzlewit.myzen.co.uk> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-17syscalls.2: srcfixG. Branden Robinson1-3/+4
Tweak input format of table text blocks to make a planned sed-driven update simpler and more reliable. Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-17getpagesize.2: tfixG. Branden Robinson1-1/+1
Signed-off-by: "G. Branden Robinson" <g.branden.robinson@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-16share/mk/: build-pdf-book: Fix chapter bookmarksAlejandro Colomar1-1/+2
So that they can be folded. Suggested-by: Deri James <deri@chuzzlewit.myzen.co.uk> Cc: "G. Branden Robinson" <branden@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-16share/mk/: build-pdf-book: Add support for mdoc(7) pages, with -mandocAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-16share/mk/: build-pdf-book: Use -rC1, to have strictly increasing page numbersAlejandro Colomar1-1/+1
Suggested-by: "G. Branden Robinson" <branden@debian.org> Suggested-by: Deri James <deri@chuzzlewit.myzen.co.uk> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-16share/mk/: Read files before 'if'Alejandro Colomar2-14/+21
'if' turns off set -e. We want to read files before 'if', so that if they don't exist, the shell will error out. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-16GNUmakefile: Simplify the $SHELLAlejandro Colomar1-3/+2
nixpkgs does not provide /usr/bin/env, so they had to work around it by specifying just env. Since make(1) accepts program names instead of paths, we can as well use bash directly, which is simpler. Link: <https://github.com/NixOS/nixpkgs/pull/300797> Reported-by: Sergei Trofimovich <slyich@gmail.com> Cc: Mario Rodas <https://github.com/marsam> Cc: Eli Schwartz <eschwartz93@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-16share/mk/: install-man: Don't pipe to install(1)Alejandro Colomar1-3/+3
install(1) doesn't work well in Darwin. It seems to be unable to handle </dev/stdin>. The problem seems to be that Darwin's stdin misbehaves. I've only workarounded the install target, and not the dist target, since it's unlikely that one would run it in such a broken system. But since installing the pages is a common operation that everybody needs, let's work around it here. Fixes: 30c38a8bf8ae ("*.mk: Pipe to install(1)") Link: <https://github.com/NixOS/nixpkgs/pull/300797> Closes: <https://bugzilla.kernel.org/show_bug.cgi?id=218730> Reported-by: Sergei Trofimovich <slyich@gmail.com> Reported-by: Mario Rodas <https://github.com/marsam> Cc: Eli Schwartz <eschwartz93@gmail.com> Cc: Pádraig Brady <P@draigBrady.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-16share/mk/: build-pdf-book: Use the system's man(7) macrosAlejandro Colomar2-1613/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-14proc.5: Refer to split-out manual pages for detailed descriptionSalvatore Bonaccorso1-1/+3
Back in August 2023 various parts of proc(5) were split out into separate manpages. The final cleanup in 92cdcec79df0 ("proc.5: Clean up after making sashimi of this page") missed to as well refer to the split out manpages and retained the wording that details are found further below in the manpages for the various files. Fixes: 92cdcec79df0 ("proc.5: Clean up after making sashimi of this page") Signed-off-by: Salvatore Bonaccorso <carnil@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-10man3/, debian/debhelper.in/glibc-doc.links: Move link pages to their placeAlejandro Colomar17-17/+16
Scripted change: $ cat debian/debhelper.in/glibc-doc.links \ | while read l; do \ echo $l \ | awk '{print $1}' \ | sed 's,usr/share/man/,.so ,' \ | sed 's,\.gz,,' \ > "$(echo $l \ | awk '{print $2}' \ | sed 's,usr/share/man/,,' \ | sed 's,\.gz,,')"; done; $ rm debian/debhelper.in/glibc-doc.links Link: <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1068188> Link: <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1068166> Link: <https://lore.kernel.org/linux-man/703ec07e-dd2b-bbc6-f1bc-f495e53b764f@gmail.com/T/> Cc: Marcos Fouces <marcos@debian.org> Cc: Sven Joachim <svenjoac@gmx.de> Cc: Bas Couwenberg <sebastic@xs4all.nl> Cc: Andreas Beckmann <anbe@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-10Revert "debian/debhelper.in/glibc-doc.{links,manpages}, ↵Alejandro Colomar1-0/+17
debian/local/manpages/pthread_*: drop the man pages for libpthread functions, as they are now included in manpages-dev. Closes: #1068188." This reverts commit c75bae912ab3b138687060df3701a888388e3d09.
2024-04-10Import pthread_*.3 link pages' git history from debian/glibc.gitAlejandro Colomar0-0/+0
These are the link pages, which I forgot to import in 87183bb8e9ec ("Import debian/local/manpages/pthread_*.3 git history from debian/glibc") They aren't files in the debian repository, but they were generated at build time, which is the reason I missed them. Here's the process: $ git clone git@salsa.debian.org:glibc-team/glibc.git $ cd glibc/ $ git filter-repo --path debian/debhelper.in/glibc-doc.links $ git tag | xargs git tag -d $ git branch | xargs git branch -D $ git remote add man file:///home/alx/src/linux/man-pages/man-pages/.bare.git $ git fetch man $ git rebase man/contrib Subsequent commits will move the pages to the appropriate place. Fixes: 87183bb8e9ec ("Import debian/local/manpages/pthread_*.3 git history from debian/glibc") Link: <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1068188> Link: <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1068166> Link: <https://lore.kernel.org/linux-man/703ec07e-dd2b-bbc6-f1bc-f495e53b764f@gmail.com/T/> Cc: Marcos Fouces <marcos@debian.org> Cc: Sven Joachim <svenjoac@gmx.de> Cc: Bas Couwenberg <sebastic@xs4all.nl> Cc: Andreas Beckmann <anbe@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-10debian/debhelper.in/glibc-doc.{links,manpages}, ↵Aurelien Jarno1-17/+0
debian/local/manpages/pthread_*: drop the man pages for libpthread functions, as they are now included in manpages-dev. Closes: #1068188.
2024-04-10 * Remove manpages now provided by manpages-dev (closes: bug#595194):Aurelien Jarno1-2/+0
- pthread_kill_other_threads_np (3) - pthread_sigmask (3) svn path=/glibc-package/trunk/; revision=4409
2024-04-10 * Remove manpage that will be provided by manpages-dev. Closes: bug#506515,Aurelien Jarno1-18/+0
bug#505784. svn path=/glibc-package/branches/glibc-2.9/; revision=3223
2024-04-10 * debian/debhelper.in/glibc-doc.links: add missing manpages links forAurelien Jarno1-10/+28
functions documented with others. Closes: #413989. svn path=/glibc-package/trunk/; revision=2114
2024-04-10update trunk to 2.5-1Clint Adams1-0/+3
svn path=/glibc-package/trunk/; revision=2040
2024-04-10 * Backport from experimental (thanks Denis):Aurelien Jarno1-1/+0
- Remove the GNU Libc Reference manual from glibc-doc because it is not DFSG-free. (Closes: #181494) The whole glibc-2.3.6/manual directory is removed from glibc-2.3.6.ds1.tar.bz2. - debian/control: Drop Build-Depends: texinfo, texi2html. - debian/control: Drop references to the antique libc-doc package. - all/cvs-manual-memory.diff: removed. - all/cvs-manual-string.diff: removed. svn path=/glibc-package/trunk/; revision=1742
2024-04-10Remove sem_*.3 manual pages from glibc-doc, these manual pages are updatedDenis Barbier1-6/+0
and maintained in the manpages-dev package. (Closes: #365547) svn path=/glibc-package/trunk/; revision=1475
2024-04-10 - debian/debhelper.in/glibc-doc.links: add manpages links for sem_*.GOTO Masanori1-0/+5
svn path=/trunk/; revision=649
2024-04-10 - debian/debhelper.in/glibc-doc.links: add missing links forGOTO Masanori1-0/+13
pthread_mutex_*(), pthread_mutexattr_*(), pthread_cond_*(), and pthread_condattr_*(). svn path=/trunk/; revision=603
2024-04-10Files missed in merge. Clean *.doc-base.Daniel Jacobowitz1-0/+5
svn path=/trunk/; revision=564
2024-04-09share/mk/: Remove support for installing compressed pagesAlejandro Colomar2-51/+4
I don't like compressed pages: they make it more difficult/slow to grep them. This was added to make it easier for users to install compressed pages even when installing from source, but probably nobody cares at all these days about a few KiB per page; drive space got cheap. Also, some of the algorithms were added just for benchmarking (for demonstrating that they were bad in this case), and not for real use. This reduces a use of compression tools, which seem to be dangerous these days. Link: <https://tukaani.org/xz-backdoor/> Link: <https://cmpct.info/~sam/blog/posts/automatic-manpage-compression/> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-09S_ISBLK.3, S_ISCHR.3, S_ISDIR.3, S_ISFIFO.3, S_ISLNK.3, S_ISREG.3, ↵Alejandro Colomar7-0/+7
S_ISSOCK.3: Add link pages to inode(7) These function-like macros are described in inode(7). Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-08share/mk/: build: Add exceptionsAlejandro Colomar2-0/+4
With the larger font size, these pages have warnings. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-08share/mk/: $TROFFFLAGS: Use a larger font sizeAlejandro Colomar1-1/+3
Link: <https://journals.uc.edu/index.php/vl/article/view/5765> Reported-by: Paul Eggert <eggert@cs.ucla.edu> Suggested-by: "G. Branden Robinson" <branden@debian.org> Cc: "Thomas E. Dickey" dickey@his.com Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-04init_module.2: Document MODULE_INIT_COMPRESS_FILE flagMichael Weiß1-0/+51
finit_module() supports the MODULE_INIT_COMPRESS_FILE flag since Linux 5.17. See commit b1ae6dc41eaaa ("module: add in-kernel support for decompressing") During implementation of a secure module loader in GyroidOS, we wanted to filter unsafe module parameters. To verify that only the two documented flags which are disabling sanity checks are unsafe, we had a look in the current kernel implementation. We discovered that this new flag MODULE_INIT_COMPRESS_FILE was added. Having a deeper look at the code, we also discovered that a new error code EOPNOTSUPP is possible within newer kernels. The inital commit only supported gzip and xz compression algorithms. Support for zstd was added in Linux 6.2 by commit 169a58ad824d8 ("module/decompress: Support zstd in-kernel decompression") Signed-off-by: Michael Weiß <michael.weiss@aisec.fraunhofer.de> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: Stephen Boyd <swboyd@chromium.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-04-04sigwait.3: Note sigprocmask(2) requirement, explicitly link ↵наб1-1/+6
sigtimedwait(2)/NOTES This comes from a real user complaint. sigwait(3) is the most obvious of the family, and it doesn't mention any of the usage details. Most of these can be crosslinked, but not mentioning the sigprocmask(2) requirement is malice. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-31getpagesize.2, syscalls.2: ModernizationElliott Hughes2-40/+20
Remove the HP-UX portability advice, since getpagesize() is a slightly better option than sysconf() for Linux systems. Explain why this function exists, and why this man page is in the wrong section. (The previous text tried to do both at the same, which was confusing.) Also explain how the vast majority of architectures that don't have a syscall (but do support multiple page sizes) actually work. Also de-emphasize the glibc 2.0 bug, since most people don't need to worry about compatibility with versions of glibc from 1997. Finally, change "not on x86" in syscalls.2 to say where there _is_ a syscall. Co-developed-by: Elliott Hughes <enh@google.com> Co-developed-by: Alejandro Colomar <alx@kernel.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-30getgrouplist.3: EXAMPLES: Fix error handling for getpwnam(3)Fedor Lapshin1-2/+7
Signed-off-by: Fedor Lapshin <fe.lap.prog@gmail.com> Co-developed-by: Alejandro Colomar <alx@kernel.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-29share/mk/: Useful Use of CatAlejandro Colomar1-5/+2
Simplify a pipeline, by using cat(1) to actually catenate stuff. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26share/mk/: Reorganize files for generating the PDF bookAlejandro Colomar5-6/+7
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26share/mk/: Generate the fonts during the buildAlejandro Colomar8-7862/+89
Suggested-by: "G. Branden Robinson" <branden@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26etc/clang-tidy/config.yaml: -llvm-header-guardAlejandro Colomar1-0/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26etc/cpplint/cpplint.cfg: -build/header_guardAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26share/mk/: $CFLAGS: -Wno-reserved-identifier, -Wno-unused-macrosAlejandro Colomar1-0/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26share/mk/: lint-c-iwyu: Add exceptionsAlejandro Colomar1-0/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26shmop.2: EXAMPLES: ffixAlejandro Colomar1-3/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26man*/: EXAMPLES: Add include guardsAlejandro Colomar3-0/+14
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26man*/: EXAMPLES: Fix includesAlejandro Colomar2-9/+13
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26share/mk/: lint-c: Lint headers from EXAMPLESAlejandro Colomar4-4/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-26share/mk/: Sync with liba2i's build systemAlejandro Colomar22-303/+327
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-24share/mk/: build-pdf*, install-pdf*: Rename targets for consistencyAlejandro Colomar10-60/+88
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-24share/mk/, scripts/LinuxManBook/build.sh: Embed script in the makefilesAlejandro Colomar2-35/+12
This is done for simplifying, and as a side effect, it also allows much more control on the script (e.g., TROFFFLAGS). Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-24share/mk/: [un]install-pdf: Add target to install the PDF bookAlejandro Colomar3-6/+40
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-24share/mk/: $EXTRAVERSION: Add variable to append to the versionAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-24share/mk/: Derive $DISTNAME from $DISTVERSIONAlejandro Colomar2-8/+10
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-24share/mk/: Reorganize build systemAlejandro Colomar39-106/+134
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-23share/mk/: dist: Don't stamp the version on the manual pagesAlejandro Colomar1-4/+1
This will allow downstream packages to set their own version, just by setting $DISTVERSION. It will be stamped at `make install` time. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-23share/mk/: $MANPAGEDATECMD: Use a variable for setting the date of manual pagesAlejandro Colomar3-2/+5
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-23share/mk/: build-*: Specify manual pages' version and dateAlejandro Colomar9-48/+27
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-23share/mk/: Fix includesAlejandro Colomar3-6/+7
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-22share/mk/: build-man: Split ruleAlejandro Colomar6-5/+82
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-22share/mk/: Use more robust regexAlejandro Colomar2-4/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-21share/mk/: build-book, build-man, install-man: Specify version and dateAlejandro Colomar5-10/+43
Each page has its own date. Add new 'build-man' target, which stamps the date and version in the pages (in $builddir, not the source ones). Build-system internal stuff: $CURDIR will be used for the build system, while $srcdir will be used for the project root of the repository. This helps use this build system in other projects. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-21scripts/LinuxManBook/prepare.pl: Use more robust pipelinesAlejandro Colomar1-2/+7
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-20GNUmakefile: help: wfixAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-20share/mk/: Reorganize dependenciesAlejandro Colomar98-278/+564
Use one directory per each (Debian) package, and one file per command. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19GNUmakefile: help: Hide variables not meant for usersAlejandro Colomar1-2/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19Start of man-pages-NEXT: Move Changes to Changes.oldAlejandro Colomar2-19/+56
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19lsm: Released 6.7Alejandro Colomar1-3/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19Changes: Ready for 6.7man-pages-6.7Alejandro Colomar1-9/+19
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19Changes: git(1) already shows contributorsAlejandro Colomar1-12/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19GNUmakefile, INSTALL, RELEASE: Expand 'make help' to document dependenciesAlejandro Colomar3-34/+18
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19GNUmakefile: help: Add a simple helpAlejandro Colomar1-0/+16
It documents how to actually get the targets and variables with a pipeline. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19GNUmakefile: Use a more portable $SHELLAlejandro Colomar1-2/+3
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19GNUmakefile: Remove helpAlejandro Colomar1-182/+0
It gets out of date easily, and it's always more accurate to actually read the makefiles, or run a command that parses them for us. In the case of .PHONY targets, or available variables, here are two commands that can help: $ make nothing -p \ | grep '^\.PHONY:' \ | tr ' ' '\n' \ | grep -v '^\.PHONY:' \ | sort; $ grep -rho '^[^[:space:]].*=' GNUmakefile share/mk/configure/; Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19share/lint, share/mk/: Move *.grep filesAlejandro Colomar6-5/+5
They're part of the build system, so put them under <share/mk/>. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19share/mk/: Split long lineAlejandro Colomar1-1/+7
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19share/mk/: Rename variablesAlejandro Colomar4-12/+13
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19share/mk/: We don't use man2html(1) any moreAlejandro Colomar1-15/+0
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19share/mk/: $htmlext: Remove unused variableAlejandro Colomar2-4/+0
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19share/mk/: Print SED rather than CPAlejandro Colomar1-1/+1
That's what we use. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-19share/mk/: wsfixAlejandro Colomar1-5/+5
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-18share/mk/: sort(1) input to tar(1)Alejandro Colomar1-0/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-18share/mk/: Consistency fixes in copyright linesAlejandro Colomar36-36/+36
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-18share/mk/: build-html: Skip known errors (in groff-1.23.0)Alejandro Colomar1-1/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-18LICENSES/: Add LGPL-3.0-or-later and LGPL-3.0-linking-exceptionAlejandro Colomar2-0/+320
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-18share/mk/: Update licenseAlejandro Colomar13-51/+27
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-18share/mk/: Use grohtml(1) instead of man2html(1)Alejandro Colomar6-40/+103
man2html(1) crashes on tzfile(5), and the upstream project is defunct. Link: <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1067022> Cc: Paul Eggert <eggert@cs.ucla.edu> Cc: "G. Branden Robinson" <branden@debian.org> Cc: Robert Luberda <robert@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-18proc_pid_io.5: Move note to CAVEATSAlejandro Colomar1-6/+5
Cc: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-18bpf.2: wfixJing Peng1-1/+1
Signed-off-by: Jing Peng <pj.hades@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-17ip.7: Some socket options are not supported by SOCK_STREAMOliver Crumrine1-0/+13
It was not made clear in several socket options that they were not supported by SOCK_STREAM; this patch fixes that. Socket options not supported by SOCK_STREAM are handled in the ip_cmsg_recv_offset() function in <net/ipv4/ip_sockglue.c>. The function is called for udp sockets, and indirectly by ping and raw sockets, but not for STREAM sockets, as they don't support these options. Link: <https://lore.kernel.org/linux-man/ejhphmjh74ebtk4br3id66f27a4yoh4aukrcz7m6dp7acsu6zr@crtueyadqzmp/T/#mb298ac7f71a348d1e6b423cfa32bfad9c28efa40> Link: <https://lore.kernel.org/linux-man/ejhphmjh74ebtk4br3id66f27a4yoh4aukrcz7m6dp7acsu6zr@crtueyadqzmp/T/#u> Signed-off-by: Oliver Crumrine <ozlinuxc@gmail.com> Cc: Peter Seiderer <ps.report@gmx.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-17proc_pid_io.5: Dewafflifyнаб1-37/+31
This page copies verbatim the contents of Documentation/filesystems/proc.rst, added wholesale in commit f9c99463b0cd05603d125c915e2886d55a686b82 ("[PATCH] Documentation for io-accounting / reporting via procfs") in 2007. As such, it mirrors the sensibilities of the time ‒ writing "successful read returns" as "data pulled from storage. actually just the data the process gave to read(). this also means from non-regular files! whether the data was pulled from storage doesn't matter actually (obligatory cache mention)" for the modern reader this is just a lot of waffling (note also that processes give no data to read()!) ‒ and sensibilities of the sheepish implementer in kernel documentation ‒ "an attempt" for a well-defined kernel behaviour, mentioning the "current implementation", consistent mentions of specific kernel-internal caching mechanisms, "the big inaccuracy here". Re-write to be more useful and less misleading as documentation; the syscall enumeration is accurate for kernel v6.8, but the sysc? stats are also bumped by kernel_{read,write}(), which is sometimes used by too many syscalls in too many scenarios to usefully enumerate. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-17proc_pid_io.5: Stats include childrenнаб1-9/+18
This file is like getrusage(2) RUSAGE_SELF + RUSAGE_CHILDREN, the current wording implies it's like just RUSAGE_SELF. Compare: #include <fcntl.h> #include <signal.h> #include <string.h> #include <sys/wait.h> #include <unistd.h> void copy() { char buf[1024]; int fd = open("/proc/self/io", 0); write(1, buf, read(fd, buf, sizeof(buf))); close(fd); } int main() { copy(); copy(); if (!fork()) { zero:; int fd = open("/dev/zero", 0); char buf[64 * 1024] = {}; write(1, buf, 10000); for (int i = 0; i < 1000; ++i) read(fd, buf, sizeof(buf)); _exit(0); } sleep(1); copy(); wait(NULL); copy(); signal(SIGCHLD, SIG_IGN); if (!fork()) goto zero; sleep(1); copy(); wait(NULL); copy(); } yielding rchar: 3980 wchar: 0 syscr: 9 syscw: 0 read_bytes: 2968 write_bytes: 0 cancelled_write_bytes: 0 rchar: 4076 wchar: 96 syscr: 10 syscw: 1 read_bytes: 2968 write_bytes: 96 cancelled_write_bytes: 0 rchar: 4175 wchar: 195 syscr: 11 syscw: 2 read_bytes: 2968 write_bytes: 195 cancelled_write_bytes: 0 rchar: 65540276 wchar: 10296 syscr: 1012 syscw: 4 read_bytes: 2968 write_bytes: 10296 cancelled_write_bytes: 0 rchar: 65540387 wchar: 10407 syscr: 1013 syscw: 5 read_bytes: 2968 write_bytes: 10407 cancelled_write_bytes: 0 rchar: 65540498 wchar: 10518 syscr: 1014 syscw: 6 read_bytes: 2968 write_bytes: 10518 cancelled_write_bytes: 0 Just s/process/& and its waited-for children/ but re-broken per review. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-17tzfile.5: ffixAlejandro Colomar1-2/+2
Cc: "G. Branden Robinson" <branden@debian.org> Cc: Paul Eggert <eggert@cs.ucla.edu> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-17tzfile.5: Avoid crashing man2html(1)Alejandro Colomar1-14/+14
Link: <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1067022> Cc: Paul Eggert <eggert@cs.ucla.edu> Cc: "G. Branden Robinson" <branden@debian.org> Cc: Robert Luberda <robert@debian.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-16tzfile.5, tzselect.8, zdump.8, zic.8: Refresh pagesAlejandro Colomar4-151/+153
Refreshed from tzdb-2024a. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-16bpf-helpers.7: Refresh pageAlejandro Colomar1-63/+106
Scripted change: $ ~/src/linux/linux/6.8/scripts/bpf_doc.py | rst2man > man7/bpf-helpers.7 Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-16getgrouplist.3: Use same type in both sides of comparisonAlejandro Colomar1-5/+5
This removes a warning. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-16unix.7: EXAMPLES: server.c: End connection with ENDLili Püspök1-1/+5
Client wants to send END while server already closed the connection on DOWN, so connection is broken instead of the Result = 0 in the sample on sending a single DOWN. Now, the server disconnects only on first END. After DOWN, all further processing of number stops. Patch does not handle cases of double END sending, multiple clients etc. Fixes: 15545eb6d7ae ("unix.7: Add example") Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Lili Püspök <poordirtylili@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-16printf.3: Return the number of bytes printed, not charactersJeremy Baxter1-1/+1
From <https://pubs.opengroup.org/onlinepubs/9699919799/functions/printf.html>: Upon successful completion, the dprintf(), fprintf(), and printf() functions shall return the number of bytes transmitted. Closes: <https://bugzilla.kernel.org/show_bug.cgi?id=218600> Reported-by: <quirin.blaeser@freenet.de> Signed-off-by: Jeremy Baxter <jtbx@disroot.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-14utf-8.7: ffixAlejandro Colomar1-15/+8
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-14utf-8.7: ffixSamanta Navarro1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-14printf.h.3head: tfixSamanta Navarro1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-14getrusage.2, proc_pid_io.5: Crosslinkнаб2-1/+3
These serve the same purpose from different perspectives. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-14getrusage.2: proc(5) /proc/pid/stat -> proc_pid_stat(5)наб1-6/+2
Fixes: bbc21bc4dbef ("proc.5, proc_pid_stat.5: Split /proc/PID/stat from proc(5)") Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-14proc_pid_io.5: Mention atomicity in atomicity noteнаб1-5/+4
And drop "current implementation" (wording still literal from Documentation/filesystems/proc.rst). Of course this describes the current implementation. Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-14proc_pid_io.5: wfixнаб1-4/+4
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-14scripts/LinuxManBook/build.sh, share/mk/: Use command variablesAlejandro Colomar4-10/+37
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12logb.3: floor(log2(fabs(x))) has rounding errorsAlejandro Colomar1-2/+3
Link: <https://inbox.sourceware.org/libc-alpha/20240305150131.GD3653@qaa.vinc17.org/T/#m3ceecda630012995339bcc5448fee451cf277a8b> Reported-by: Vincent Lefevre <vincent@vinc17.net> Suggested-by: Vincent Lefevre <vincent@vinc17.net> Cc: Morten Welinder <mwelinder@gmail.com> Cc: Adhemerval Zanella Netto <adhemerval.zanella@linaro.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12scripts/LinuxManBook/prepare.pl: Support some autogenerated pages from other ↵Deri1-12/+14
projects And remove a warning about an experimental perl feature, by using a while instead of a for loop. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12TIMESPEC_TO_TIMEVAL.3, TIMEVAL_TO_TIMESPEC.3: Document these macrosAlejandro Colomar2-0/+33
Reported-by: Guillem Jover <guillem@hadrons.org> Reviewed-by: Oskari Pirhonen <xxc3ncoredxx@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12share/mk/configure/build-depends/cc.mk: Use -Wno-unsafe-buffer-usage with ↵Alejandro Colomar1-1/+3
clang(1) That warning has false positives, such as in unix(7). Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12unix.7: Use a 'ssize_t' for the return value of read(2) and write(2)Alejandro Colomar1-21/+23
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12unix.7: Use 'int' to iterate over 'argv'Alejandro Colomar1-1/+1
'argc' is an 'int', so we should compare it with a variable of the same type. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12unix.7: Use int main(void)Alejandro Colomar1-1/+1
The arguments were unused. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12unix.7: Remove spurious #includeAlejandro Colomar1-1/+2
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12unix.7: Build example programsAlejandro Colomar1-2/+12
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12read.2: tfixHugo Gabriel Eyherabide1-1/+1
Signed-off-by: Hugo Gabriel Eyherabide <hugogabiel.eyherabide@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12log2.3, log10.3: wfixAlejandro Colomar2-4/+4
Reported-by: Morten Welinder <mwelinder@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12cbrt.3: wfix: Cube roots are rarely representableAlejandro Colomar1-2/+5
On Thu, Feb 29, 2024 at 07:28:10PM -0500, Morten Welinder wrote: > The phrase "every representable real value has a representable real > cube root" is wrong. In fact, a representable cube root is quite > rare. Link: <https://lore.kernel.org/linux-man/ZeYKUOKYS7G90SaV@debian/T/#mff0ab388000c6afdb5e5162804d4a0073de481de> Reported-by: Morten Welinder <mwelinder@gmail.com> Cowritten-by: Morten Welinder <mwelinder@gmail.com> Cc: Adhemerval Zanella Netto <adhemerval.zanella@linaro.org> Cc: Vincent Lefevre <vincent@vinc17.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12significand.3: significand() uses FLT_RADIX, not 2Alejandro Colomar1-1/+2
It's implemented using scalb(), which uses FLT_RADIX. Reported-by: Morten Welinder <mwelinder@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-12logb.3: logb(x) is floor(log2(fabs(x)))Alejandro Colomar1-1/+1
log2(3) doesn't accept negative input, but it seems logb(3) does accept it. Link: <https://lore.kernel.org/linux-man/ZeYKUOKYS7G90SaV@debian/T/#u> Reported-by: Morten Welinder <mwelinder@gmail.com> Cc: Adhemerval Zanella Netto <adhemerval.zanella@linaro.org> Cc: Vincent Lefevre <vincent@vinc17.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-10share/mk/: dist: Don't package .git/Alejandro Colomar1-0/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-05clock_getres.2: HISTORY: Clarify that POSIX.1-2008 only makes mandatory the ↵Alejandro Colomar1-1/+2
functions The different clocks are still optional. Closes: <https://bugzilla.kernel.org/show_bug.cgi?id=218452> Fixes: 4131356cdab8 ("man*/, man-pages.7: VERSIONS, STANDARDS, HISTORY: Reorganize sections") Reported-by: Enrique Garcia <cquike@arcor.de> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-05cgroups.7: tfixAlejandro Colomar1-2/+2
Closes: <https://bugzilla.kernel.org/show_bug.cgi?id=218105> Reported-by: Göran Uddeborg <goeran@uddeborg.se> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-05share/mk/: Add missing includeAlejandro Colomar1-0/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-05clock_nanosleep.2: Use 't' rather than 'request'Alejandro Colomar1-8/+8
It seems much more clear. Cc: Elliott Hughes <enh@google.com> Cc: Stefan Puiu <stefan.puiu@gmail.com> Cc: Bruno Haible <bruno@clisp.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-03nanosleep.2: Use 'duration' rather than 'request'Alejandro Colomar1-7/+8
It seems much more clear. Suggested-by: Elliott Hughes <enh@google.com> Cc: Stefan Puiu <stefan.puiu@gmail.com> Cc: Bruno Haible <bruno@clisp.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-03-03man*/: epoll_*(), fcntl(), flock(), ioctl(), msgctl(), *prctl(), ptrace(), ↵Alejandro Colomar19-209/+217
quotactl(), reboot(), semctl(), shmctl(), lockf(): Consistently use 'op' and 'operation' Reported-by: Bruno Haible <bruno@clisp.org> Cc: Elliott Hughes <enh@google.com> Cc: Stefan Puiu <stefan.puiu@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-28Changes.old: tfixJakub Wilk1-1/+1
Signed-off-by: Jakub Wilk <jwilk@jwilk.net> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-28share/mk/: distcheck: Rewrite most of itAlejandro Colomar7-240/+18
This implementation is simpler. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-28share/mk/: build-ex-src: Support long $DISTNAMEAlejandro Colomar1-0/+2
When $DISTNAME is too long, mandoc(1) breaks the last line. The last two lines can always be removed safely, which makes it work also in this case. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-28share/mk/: Fix pathAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-28process_madvise.2: Fix comments about commit idsAlejandro Colomar1-1/+2
Move the comment about the Linux commit id, specify that it's a Linux commit, and add the glibc commit id too. Link: <https://sourceware.org/bugzilla/show_bug.cgi?id=27380> Link: <https://lore.kernel.org/linux-man/Zd5fMGvIlmhQyONs@thunder.hadrons.org/T/#m9129640e1293a94ff1606a2f973522f40c968306> Fixes: 28628d826661 ("process_madvise.2: Document the glibc wrapper") Reported-by: Guillem Jover <guillem@hadrons.org> Cc: Florian Weimer <fweimer@redhat.com> Cc: Carlos O'Donell <carlos@redhat.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26CONTRIBUTING.d/lint: Rewrite now that we have $SKIP_XFAILAlejandro Colomar1-27/+27
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26share/mk/, man*/: build-ex: Skip expected failuresAlejandro Colomar11-9/+63
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26etc/cppcheck/cppcheck.suppress: Silence reportAlejandro Colomar1-0/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26share/mk/, etc/: Fix dependenciesAlejandro Colomar8-6/+6
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26share/mk/: lint-c: Skip expected failuresAlejandro Colomar6-23/+330
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26man3/: Say cancelation instead of cancellationAlejandro Colomar3-7/+7
It's the most common spelling in this project. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26share/mk/: $SKIP_XFAIL: Add variable to allow skipping expected failuresAlejandro Colomar13-298/+184
Default to 'yes'. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26share/mk/: distcheck: string_copying.7 fails 'check-catman'Alejandro Colomar1-0/+1
Except with groff(1) from git HEAD, which will be 1.24.0 eventually. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26mbsrtowcs.3: ffixAlejandro Colomar1-1/+2
With groff-1.23.0, which has a base paragraph indentation of 7, this line was longer than 80 columns. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26share/mk/configure/version.mk: $DISTDATECMD: Use committer date, not author dateAlejandro Colomar1-1/+1
Comitter date is always increasing, while author date may jump backwards, which is problematic with make(1). Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-26share/mk/: Simplify codeAlejandro Colomar1-3/+4
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: distcheck: Ignore fanotify_init.2 build errorsAlejandro Colomar1-0/+6
In groff from git HEAD, it doesn't fail, but in 1.23.0, which still has the default base paragraph indentation set to 7, it reports troff:man2/fanotify_init.2:322: warning [p 4, 0.7i]: cannot adjust line Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25man*/: srcfixAlejandro Colomar13-59/+59
Found with: $ grep -rn '"""' man* \ | grep -v '"""""""""""' \ | sed 's/:.*//' \ | sort \ | uniq; man2/add_key.2 man2/getrlimit.2 man2/keyctl.2 man2/pivot_root.2 man2/request_key.2 man3/isalpha.3 man3/setlocale.3 man3/toupper.3 man7/capabilities.7 man7/cgroups.7 man7/keyrings.7 man7/locale.7 man7/user_namespaces.7 Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25man*/: ffixAlejandro Colomar6-7/+7
Found with: $ grep -rn '^\.[BI] .* [.,:;)]*$' man* man2/prctl.2:382:.B FR=1 . man2/openat2.2:377:.B EAGAIN . man2/openat2.2:424:.I how.resolve . man5/elf.5:788:.B PF_R . man5/networks.5:18:.I name number aliases ... man5/protocols.5:31:.I protocol number aliases ... man7/cgroups.7:980:.I """max""" . Cc: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: distcheck-*: Add targets to run 'distcheck' partiallyAlejandro Colomar9-4/+65
This is mainly for debugging purposes. I won't document it in 'make help' for now, as it will clutter the output, and isn't so useful for normal users. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25vsock.7: ffixнаб1-1/+1
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25process_madvise.2: Rename parameter, and use array syntaxAlejandro Colomar1-7/+7
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25process_madvise.2: Document the glibc wrapperAlejandro Colomar1-15/+5
$ grepc -n process_madvise /usr/include/ /usr/include/x86_64-linux-gnu/bits/mman_ext.h:25: extern __ssize_t process_madvise (int __pid_fd, const struct iovec *__iov, size_t __count, int __advice, unsigned __flags) __THROW; Reported-by: Florian Weimer <fweimer@redhat.com> Cc: Carlos O'Donell <carlos@redhat.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25sigaction.2: HISTORY: Some constants are or were XSI extensionsAlejandro Colomar1-1/+9
Link: <https://lore.kernel.org/linux-man/20240214095707.1824c25c@plasteblaster/T/> Reported-by: Thomas Orgis <thomas@orgis.org> Cc: Eric Blake <eblake@redhat.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25sigaction.2: HISTORY: SA_NOCLDSTOP wasn't added in POSIX.1-2001Alejandro Colomar1-1/+0
It already existed in POSIX.1-1996, according to just a few lines above. Link: <https://lore.kernel.org/linux-man/20240214095707.1824c25c@plasteblaster/T/> Cc: Thomas Orgis <thomas@orgis.org> Cc: Eric Blake <eblake@redhat.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25getdents.2: Add note to misleading field "d_off" in struct linux_dirent64Vinícius Schütz Piva1-4/+8
The getdents.2 man page details a pair syscalls: getdents() and getdents64(), both of which are used to get the entries of a directory. The results are populated into a structure, with the difference between both syscalls being mostly bitwidth related. However, the behaviour or the 'd_off' field in both struct linux_dirent and linux_dirent64 is wrongly documented in this man page. According to the current manual page, 'd_off' is used to store the "Offset to the next linux_dirent [...] the distance from the start of the directory to the start of the next linux_dirent." This value, though, is filesystem dependent, and much of the time it stores no such offset. According to readdir.3 [1] manpage: > The value returned in d_off is the same as would be returned by > calling telldir(3) at the current position in the directory stream. > Be aware that despite its type and name, the d_off field is seldom > any kind of directory offset on modern filesystems. Applications > should treat this field as an opaque value, making no assumptions > about its contents; see also telldir(3). Of course, readdir(3) is a glibc function with no ties to getdents(2), but it was implemented with such syscall and considering that readdir(3) doesn't process the data from getdents(2) my belief is that it inherited said behaviour from it [2]. telldir(3) tells a similar story. On the example provided at the end of getdents.2, notable is the d_off value of the very last entry: --------------- nread=120 --------------- inode# file type d_reclen d_off d_name 2 directory 16 12 . 2 directory 16 24 .. 11 directory 24 44 lost+found 12 regular 16 56 a 228929 directory 16 68 sub 16353 directory 16 80 sub2 130817 directory 16 4096 sub3 which makes a very sudden jump that is obviously not where the entry is located. Rerunning this same example but on a ext4 partition gives you garbage values: --------------- nread=176 --------------- inode# file type d_reclen d_off d_name 2050 directory 24 4842312636391754590 sub2 2 directory 24 4844777444668968292 .. 2051 directory 24 7251781863886579875 sub3 12 regular 24 7470722685224223838 a 2049 directory 24 7653193867028490235 sub 11 directory 32 7925945214358802294 lost+found 2 directory 24 9223372036854775807 . In fact, I've had a hard time reproducing nice d_off values on ext2 too, so what the filesystem does with d_off must have change since then. On tmpfs it's a count: --------------- nread=144 --------------- inode# file type d_reclen d_off d_name 1 directory 24 1 . 1 directory 24 2 .. 5 directory 24 3 sub3 4 directory 24 4 sub2 3 directory 24 5 sub 2 regular 24 6 a I've also not been the first to notice this, as you can see from this stackoverflow issue opened last year: https://stackoverflow.com/q/75119224 Safe to say, it's a very unreliable field. Below is a patch that adds a warning besides the d_off field in both structures, plus a brief explanation on why this field can be mislea- ding (while also directing the user towards the readdir.3 man page). Link: [1] <https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/man3/readdir.3> Link: [2] <https://elixir.bootlin.com/glibc/glibc-2.39/source/sysdeps/unix/sysv/linux/readdir.c> Signed-off-by: Vinícius Schütz Piva <vinicius.vsczpv@outlook.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: srcfixAlejandro Colomar7-48/+65
Use a variable for the options passed to recursive make(1), to avoid repetition. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: dist: Show CP instead of INSTALLAlejandro Colomar1-1/+1
We're using install(1), but it's just an implementation detail. Since we're not installing into the system, CP is less confusing. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: dist: FORCE regeneration of version file if necessaryAlejandro Colomar2-1/+18
If any of $DISTVERSION, $DISTNAME, or $DISTDATE have changed since the last 'make dist', force regeneration of the version file, even if it wouldn't change due to normal dependencies. This makes sure that the tarball has correct values. It doesn't need to depend on all $DISTFILES. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: $DISTDATE: If the repository is "dirty", use the newest timestampAlejandro Colomar3-9/+26
Otherwise, the files within the 'dist' tarball will have a timestamp older than their last actual modification, which is problematic with 'distcheck'. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: dist: Preserve links with cp(1)Alejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: Consistently use 'cp -T'Alejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/configure/version.mk: $DISTNAME: Pass --dirty to git-describe(1)Alejandro Colomar1-1/+1
This makes sure we don't accidentally produce release tarballs from a dirty repository. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/configure/version.mk: $DISTNAME: Don't hide git(1) errorsAlejandro Colomar1-1/+1
We don't call git(1) inside tarballs anymore to get the $DISTNAME, so we can safely assume that git(1) should never fail, and if it fails, we better get an error message. Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: distcheck: Remove old directory before untarring the new tarballAlejandro Colomar1-0/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: distcheck: Fix dependenciesAlejandro Colomar7-15/+15
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: Fix pathAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: distcheck: Support an absolute path in $builddirAlejandro Colomar10-268/+272
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25share/mk/: distcheck: Use temporary dirs within $builddirAlejandro Colomar10-35/+32
Signed-off-by: Alejandro Colomar <alx@kernel.org>
2024-02-25close_range.2: srcfixAlejandro Colomar1-1/+1
Signed-off-by: Alejandro Colomar <alx@kernel.org>