Miscellaneous fixes
cover Miscellaneous fixes
From: Seth McDonald <[email protected]>
Hello,
Here's just a few minor fixes I came across.
Hopefully (fingers crossed) the patches will remain intact this time. If so, I may be able to begin sending out some patches for the updated HISTORY sections (currently at 109).
Seth McDonald (4):
man/man2/syscall.2: Add HISTORY section
sys/man2/sysctl.2: HISTORY: wfix
man/man2/utime.2: SYNOPSIS: ffix
man/man2const/F_GETSIG.2const: HISTORY: tfix
man/man2/syscall.2 | 3 ++- man/man2/sysctl.2 | 3 +-- man/man2/utime.2 | 2 +- man/man2const/F_GETSIG.2const | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-)
Range-diff against v0:
-: ---------- > 1: a2a2a51ede man/man2/syscall.2: Add HISTORY section -: ---------- > 2: 1477de655f sys/man2/sysctl.2: HISTORY: wfix -: ---------- > 3: fad6d60041 man/man2/utime.2: SYNOPSIS: ffix -: ---------- > 4: 2f33ba3b5b man/man2const/F_GETSIG.2const: HISTORY: tfix
Signature · 1 line
2.47.3
PATCH 1/4 man/man2/syscall.2: Add HISTORY section
From: Seth McDonald <[email protected]>
Move the description of syscall(2)'s first appearance from NOTES to a new HISTORY section.
--- man/man2/syscall.2 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
man/man2/syscall.2 +2 -1
@@ -62,10 +62,11 @@ .SH ERRORS The requested system call number is not implemented. .P Other errors are specific to the invoked system call. -.SH NOTES +.SH HISTORY .BR syscall () first appeared in 4BSD. +.SH NOTES .SS Architecture-specific requirements Each architecture ABI has its own requirements on how system call arguments are passed to the kernel.
Signature · 1 line
2.47.3
Alejandro Colomar
maintainerRe: [PATCH v1 1/4] man/man2/syscall.2: Add HISTORY section
Quoted 6 lines · On Tue, Dec 30, 2025 at 04:42:00PM +1000, [email protected] wrote:
From: Seth McDonald <[email protected]>
Move the description of syscall(2)'s first appearance from NOTES to a new HISTORY section.
Signed-off-by Seth McDonald <[email protected]>
Patch applied; Thanks!
Cheers,
Alex
Quoted 25 lines
--- man/man2/syscall.2 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)man/man2/syscall.2 +2
-1@@ -62,10 +62,11 @@ .SH ERRORS The requested system call number is not implemented. .P Other errors are specific to the invoked system call. -.SH NOTES +.SH HISTORY .BR syscall () first appeared in 4BSD. +.SH NOTES .SS Architecture-specific requirements Each architecture ABI has its own requirements on how system call arguments are passed to the kernel.Signature · 1 line
2.47.3
Signature · 1 line
<https://www.alejandro-colomar.es>
PATCH 2/4 sys/man2/sysctl.2: HISTORY: wfix
In reply to [email protected]From: Seth McDonald <[email protected]>
Include 4.4BSD in the initial list in HISTORY, rather than stating the function's origin in 4.4BSD as a full sentence. This is more concise and consistent with other man pages.
--- man/man2/sysctl.2 | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
man/man2/sysctl.2 +1 -2
@@ -73,11 +73,10 @@ .SH ERRORS .SH STANDARDS Linux. .SH HISTORY +4.4BSD, Linux 1.3.57. Removed in Linux 5.5, glibc 2.32. .P -It originated in -4.4BSD. Only Linux has the .I /proc/sys mirror, and the object naming schemes differ between Linux and 4.4BSD,
Signature · 1 line
2.47.3
Re: [PATCH v1 2/4] sys/man2/sysctl.2: HISTORY: wfix
Quoted 18 lines · [email protected] writes:
From: Seth McDonald <[email protected]>
Include 4.4BSD in the initial list in HISTORY, rather than stating the function's origin in 4.4BSD as a full sentence. This is more concise and consistent with other man pages.
Signed-off-by Seth McDonald <[email protected]>--- man/man2/sysctl.2 | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)man/man2/sysctl.2 +0
-0@@ -73,11 +73,10 @@ .SH ERRORS .SH STANDARDS Linux.
man/man2/sysctl.2 .SH ERRORS · line 82
Quoted 10 lines
man/man2/sysctl.2 +1
-2.SH HISTORY +4.4BSD, Linux 1.3.57. Removed in Linux 5.5, glibc 2.32. .P -It originated in -4.4BSD. Only Linux has the .I /proc/sys mirror, and the object naming schemes differ between Linux and 4.4BSD,
It actually existed before 4.4BSD. It existed in 2.11BSD at least [1].
Collin
[1] https://www.tuhs.org/cgi-bin/utree.pl?file=2.11BSD/src/man/man3/sysctl.3
Re: [PATCH v1 2/4] sys/man2/sysctl.2: HISTORY: wfix
Quoted 12 lines · Collin Funk
Quoted 10 lines · [email protected] writes:
From: Seth McDonald <[email protected]>
Include 4.4BSD in the initial list in HISTORY, rather than stating the function's origin in 4.4BSD as a full sentence. This is more concise and consistent with other man pages.
Signed-off-by Seth McDonald <[email protected]>---
man/man2/sysctl.2 | 3 +--1 file changed, 1 insertion(+), 2 deletions(-)
[...]
Quoted 6 lines
It actually existed before 4.4BSD. It existed in 2.11BSD at least [1].
Collin
[1] https://www.tuhs.org/cgi-bin/utree.pl?file=2.11BSD/src/man/man3/sysctl.3
That would be good to include, though we may need to first modify standards(7) since 2.11BSD currently isn't listed there (the earliest mentioned is 3BSD).
----
Seth McDonald.
sethmcmail at pm dot me (mailing lists) 2336 E8D2 FEB1 5300 692C 62A9 5839 6AD8 9243 D369
Re: [PATCH v1 2/4] sys/man2/sysctl.2: HISTORY: wfix
Quoted 5 lines · Seth McDonald
That would be good to include, though we may need to first modify standards(7) since 2.11BSD currently isn't listed there (the earliest mentioned is 3BSD).
The date on that file, 1993, strongly suggests a backport from the then-getting-finalized 4.4BSD (which settled out over the course of 1994 and into 1995 depending on whether one considers the "Encumbered" or "Lite" versions mandated by the settlement of the USL v. BSDI lawsuit).
4.3BSD, by contrast, dates to 1986. See my previous mail.
So in that sense, a sysctl()-bearing 2.11BSD is more recent than 4.3BSD.
I suggest the Linux man-pages project not attempt to track the provenance or timeline of 2.11BSD features. It's too much work.
Regards,
Branden
Re: [PATCH v1 2/4] sys/man2/sysctl.2: HISTORY: wfix
Quoted 12 lines · G. Branden Robinson
Quoted 5 lines · Seth McDonald
That would be good to include, though we may need to first modify standards(7) since 2.11BSD currently isn't listed there (the earliest mentioned is 3BSD).
The date on that file, 1993, strongly suggests a backport from the then-getting-finalized 4.4BSD (which settled out over the course of 1994 and into 1995 depending on whether one considers the "Encumbered" or "Lite" versions mandated by the settlement of the USL v. BSDI lawsuit).
Quoted 4 lines
4.3BSD, by contrast, dates to 1986. See my previous mail.
So in that sense, a sysctl()-bearing 2.11BSD is more recent than 4.3BSD.
It does say 1993, but it also has the following:
.\" @(#)sysctl.3 8.1.1 (2.11BSD GTE) 1/13/95
.\"
.TH SYSCTL 3 "January 13, 1995"The first line being used by SCCS? That is an assumption since I have never used it.
Quoted 2 lines
I suggest the Linux man-pages project not attempt to track the provenance or timeline of 2.11BSD features. It's too much work.
And there is probably not much practical benefit, i.e., just some (very few, probably) people interested in the history.
Collin
Re: [PATCH v1 2/4] sys/man2/sysctl.2: HISTORY: wfix
Hi Collin,
Quoted 8 lines · Collin Funk
It does say 1993, but it also has the following:
.\" @(#)sysctl.3 8.1.1 (2.11BSD GTE) 1/13/95 .\" .TH SYSCTL 3 "January 13, 1995"The first line being used by SCCS? That is an assumption since I have never used it.
Yup, that's exactly what it is.
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/what.html
To add precision to my earlier remarks, the "last" Berkeley CSRG release appears to have been "4.4BSD Lite Release 2", dated May 1995.
https://gunkies.org/wiki/4.4BSD_Lite_Release_2
The "real work" was by then happening as BSDI, where every developer was assured that their deeply principled avoidance of the viral GPL would result in billionaire status for them all. Winning!
Quoted 5 lines
Quoted 2 lines
I suggest the Linux man-pages project not attempt to track the provenance or timeline of 2.11BSD features. It's too much work.
And there is probably not much practical benefit, i.e., just some (very few, probably) people interested in the history.
I number myself among those few, but without some sort of tool to keep track of 2BSD + 2.11BSD patches on an _automated_ basis to monitor when symbols appear and vanish from the source base, I think researching such history is a poor use of Linux man-pages contributors' time.
Put differently, I would advocate _against_ Alex mandating that contributors to "HISTORY" sections pin down just when a feature showed up in 2BSD development specifically. Without the aforementioned tool, I think the problem is too hard. The juice is not worth the squeeze.
If any 2BSD advocates feel slighted, we can always point out that this project largely uses the GPL, and that they can't expect anything good to come from sick, evil copyleftists anyway. 😈🤘
Surely they can console themselves by counting their money.
Regards,
Branden
Alejandro Colomar
maintainerRe: [PATCH v1 2/4] sys/man2/sysctl.2: HISTORY: wfix
Hi all,
Quoted 36 lines · G. Branden Robinson
Hi Collin,
Quoted 8 lines · Collin Funk
It does say 1993, but it also has the following:
.\" @(#)sysctl.3 8.1.1 (2.11BSD GTE) 1/13/95 .\" .TH SYSCTL 3 "January 13, 1995"The first line being used by SCCS? That is an assumption since I have never used it.
Yup, that's exactly what it is.
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/what.html
To add precision to my earlier remarks, the "last" Berkeley CSRG release appears to have been "4.4BSD Lite Release 2", dated May 1995.
https://gunkies.org/wiki/4.4BSD_Lite_Release_2
The "real work" was by then happening as BSDI, where every developer was assured that their deeply principled avoidance of the viral GPL would result in billionaire status for them all. Winning!
Quoted 5 lines
Quoted 2 lines
I suggest the Linux man-pages project not attempt to track the provenance or timeline of 2.11BSD features. It's too much work.
And there is probably not much practical benefit, i.e., just some (very few, probably) people interested in the history.
I number myself among those few, but without some sort of tool to keep track of 2BSD + 2.11BSD patches on an _automated_ basis to monitor when symbols appear and vanish from the source base, I think researching such history is a poor use of Linux man-pages contributors' time.
Quoted 4 lines
Put differently, I would advocate _against_ Alex mandating that contributors to "HISTORY" sections pin down just when a feature showed up in 2BSD development specifically. Without the aforementioned tool, I think the problem is too hard. The juice is not worth the squeeze.
I certainly won't mandate anything prior to POSIX.1-2001/Cor2-2004 (informally, POSIX.1-2004), as that's the oldest POSIX that is easily available. I personally don't check any older sources than that regularly.
Actually, I'm even starting to ignore anything older than POSIX.1-2008, because for some reason the search engine at
<https://pubs.opengroup.org/onlinepubs/009695399/> often fails for "word search" with
Not Found
The requested URL was not found on this server.
so, I'm giving up on POSIX.1-2004 too. For some reason, the search engine works fine for more recent POSIX revisions. The Open Group website is a terrible thing, and part of the reason I decided to stop supporting the POSIX manual pages. The Austin Group would do well having a talk with whoever is in charge, and fix several things, including publication of POSIX.1-2001 and POSIX.1-2002, and actually open their standards (the source code of the standard; WG21 did publish the source of the C++ drafts and they got away with that).
However, I won't reject patches documenting 2BSD and 3BSD, if some people are interested in doing the work.
Have a lovely day!
Alex
Quoted 9 lines
If any 2BSD advocates feel slighted, we can always point out that this project largely uses the GPL, and that they can't expect anything good to come from sick, evil copyleftists anyway. 😈🤘
Surely they can console themselves by counting their money.
Regards,
Branden
Signature · 1 line
<https://www.alejandro-colomar.es>
Is 2.11BSD < 4BSD? It depends. (was: [PATCH v1 2/4] sys/man2/sysctl.2: HISTORY: wfix)
In reply to Collin FunkQuoted 1 line · Collin Funk
It actually existed before 4.4BSD. It existed in 2.11BSD at least [1].
Hang on a second. BSD version numbers are a little funny.
It is true that 1BSD < 2BSD < 3BSD < 4BSD.
After that, things get a little weird.
2BSD targeted only the PDP-11, and swapped out entire processes just as Unix historically always had.
3BSD targeted the VAX, and supported demand paging--just as UNIX 32/V, the most recent common ancestor of AT&T System III/V and [34]BSD, did.[0]
4BSD was a relatively minor update to 3BSD, also exclusively for the VAX. 4.1BSD was a much bigger deal and would have been 5BSD, except AT&T blew a gasket over the version numbered, seeking a proprietary claim over the number five. This has been discussed just this week on the TUHS list.[1]
2BSD however was not abandoned as soon as 3BSD or even 4BSD showed up. Some people still had PDP-11s around. And thanks to (Open)SIMH, we can all still run one if we choose.
Features from 3,4BSD got backported to 2BSD, which eventually stabilized its minor version number at "11", I suspect because that was irresibility useful to characterize the system's only supported target architecture.
2.11BSD continues to be maintained today, as a set of literally hundreds of patches, as Berekeley-flavored Unix aficionadios explore just what they can do with what is now basically an "embedded system".
The most recent patch I know of is #498, dated 2 September.[2]
I wish we had a modern package manager for the thing. I've never been crazy about BSD's "patch && make world" approach. :-P
Regards,
Branden
[0] The demand-paged kernel was such a big deal that it's why the "virtual memory" version of the Unix kernel appeared on disk as "vmunix". The Linux kernel aped this as "vmlinux"--"vmlinuz" for its compressed form--even though there has never existed a traditionally swapping version. The more arbitrary and esoteric a naming convention is, the more tightly Unix people cling to it.
[1] https://www.tuhs.org/pipermail/tuhs/2025-December/032903.html
[2] https://www.tuhs.org/Archive/Distributions/UCB/2.11BSD/Patches/
Re: Is 2.11BSD < 4BSD? It depends.
Quoted 11 lines · G. Branden Robinson
Quoted 1 line · Collin Funk
It actually existed before 4.4BSD. It existed in 2.11BSD at least [1].
2BSD however was not abandoned as soon as 3BSD or even 4BSD showed up. Some people still had PDP-11s around. And thanks to (Open)SIMH, we can all still run one if we choose.
Features from 3,4BSD got backported to 2BSD, which eventually stabilized its minor version number at "11", I suspect because that was irresibility useful to characterize the system's only supported target architecture.
Oh, right. The source I linked has a 1995 date on it that I missed. I would have realized the mistake if I had, since 4.4BSD is from 1992 or 1993.
Collin
Re: Is 2.11BSD < 4BSD? It depends. (was: [PATCH v1 2/4] sys/man2/sysctl.2: HISTORY: wfix)
In reply to G. Branden Robinson[self-correction]
Quoted 6 lines · G. Branden Robinson
2BSD targeted only the PDP-11, and swapped out entire processes just as Unix historically always had.
3BSD targeted the VAX, and supported demand paging--just as UNIX 32/V, the most recent common ancestor of AT&T System III/V and [34]BSD, did.[0]
Nope, I mangled my history here. UNIX 32/V (or just 32V) _did not implement demand paging_. It ported Unix to the 32-bit VAX-11 architecture, but continued to swap out entire process's memory images. You can read more about 32/V in the attachment.
3BSD _did_ implement demand paging and was, rightly, viewed as a major feather in the cap of the Berkeley CSRG that produced it.
Quoted 1 line
4BSD was a relatively minor update to 3BSD,
I'll further qualify that this characterization may apply only if one cares about operating system kernels. 4BSD also introduced the curses library, which in its ncurses reimplementation, many *nix system users still use today. Even some Windows users do, via PDCurses{,Mod}.
Sorry for my inaccuracies.
Regards,
Branden
Alejandro Colomar
maintainerRe: [PATCH v1 2/4] sys/man2/sysctl.2: HISTORY: wfix
In reply to [email protected]Hi Seth,
Quoted 7 lines · On Tue, Dec 30, 2025 at 04:42:01PM +1000, [email protected] wrote:
From: Seth McDonald <[email protected]>
Include 4.4BSD in the initial list in HISTORY, rather than stating the function's origin in 4.4BSD as a full sentence. This is more concise and consistent with other man pages.
Signed-off-by Seth McDonald <[email protected]>
Thanks! I've applied this patch.
Have a lovely New Year!
Alex
Quoted 25 lines
--- man/man2/sysctl.2 | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)man/man2/sysctl.2 +1
-2@@ -73,11 +73,10 @@ .SH ERRORS .SH STANDARDS Linux. .SH HISTORY +4.4BSD, Linux 1.3.57. Removed in Linux 5.5, glibc 2.32. .P -It originated in -4.4BSD. Only Linux has the .I /proc/sys mirror, and the object naming schemes differ between Linux and 4.4BSD,Signature · 1 line
2.47.3
Signature · 1 line
<https://www.alejandro-colomar.es>
PATCH 3/4 man/man2/utime.2: SYNOPSIS: ffix
In reply to [email protected]From: Seth McDonald <[email protected]>
Increments the indentation of the times parameter in the utimes(2) prototype by one space.
--- man/man2/utime.2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
man/man2/utime.2 +1 -1
@@ -18,7 +18,7 @@ .SH SYNOPSIS .B #include <sys/time.h> .P .BI "int utimes(const char *" path , -.BI " const struct timeval " times "[_Nullable 2]);" +.BI " const struct timeval " times "[_Nullable 2]);" .fi .SH DESCRIPTION .B Note:
Signature · 1 line
2.47.3
Alejandro Colomar
maintainerRe: [PATCH v1 3/4] man/man2/utime.2: SYNOPSIS: ffix
Hi Seth,
Quoted 15 lines · On Tue, Dec 30, 2025 at 04:42:02PM +1000, [email protected] wrote:
From: Seth McDonald <[email protected]>
Increments the indentation of the times parameter in the utimes(2) prototype by one space.
Signed-off-by Seth McDonald <[email protected]>--- man/man2/utime.2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)man/man2/utime.2 +0
-0
man/man2/utime.2 .SH SYNOPSIS · line 21
Quoted 5 lines
man/man2/utime.2 +1
-1@@ -18,7 +18,7 @@ .SH SYNOPSIS .B #include <sys/time.h> .P .BI "int utimes(const char *" path , -.BI " const struct timeval " times "[_Nullable 2]);" +.BI " const struct timeval " times "[_Nullable 2]);"
The current formatting is intended, and documented in man-pages(7):
In the SYNOPSIS, a long function prototype may need to be continued over to the next line. The continuation line is indented according to the following rules:
[...]
(2) But, where multiple functions in the SYNOPSIS require continuation lines, and the function names have dif‐ ferent lengths, then align all continuation lines to start in the same column. This provides a nicer ren‐ dering in PDF output (because the SYNOPSIS uses a variable width font where spaces render narrower than most characters). As an example:
int getopt(int argc, char * const argv[],
const char *optstring);
int getopt_long(int argc, char * const argv[],
const char *optstring,
const struct option *longopts, int *longindex);
Have a lovely day!
Alex
P.S.: These patches work correctly. :)
Quoted 7 lines
man/man2/utime.2 +0
-0.fi .SH DESCRIPTION .B Note:Signature · 1 line
2.47.3
Signature · 1 line
<https://www.alejandro-colomar.es>
PATCH 4/4 man/man2const/F_GETSIG.2const: HISTORY: tfix
In reply to [email protected]From: Seth McDonald <[email protected]>
The G and S do look surprisingly similar...
--- man/man2const/F_GETSIG.2const | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
man/man2const/F_GETSIG.2const +2 -2
@@ -458,13 +458,13 @@ .SH HISTORY .TP .B F_GETOWN_EX .TQ -.B F_GETOWN_EX +.B F_SETOWN_EX POSIX.1-2024. Linux 2.6.32. .TP .B F_GETSIG .TQ -.B F_GETSIG +.B F_SETSIG Linux. .SH BUGS .SS F_GETOWN
Signature · 1 line
2.47.3
Alejandro Colomar
maintainerRe: [PATCH v1 4/4] man/man2const/F_GETSIG.2const: HISTORY: tfix
Quoted 6 lines · On Tue, Dec 30, 2025 at 04:42:03PM +1000, [email protected] wrote:
From: Seth McDonald <[email protected]>
The G and S do look surprisingly similar...
Signed-off-by Seth McDonald <[email protected]>---
Thanks! Patch applied.
Cheers,
Alex
Quoted 26 lines
man/man2const/F_GETSIG.2const | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)man/man2const/F_GETSIG.2const +2
-2@@ -458,13 +458,13 @@ .SH HISTORY .TP .B F_GETOWN_EX .TQ -.B F_GETOWN_EX +.B F_SETOWN_EX POSIX.1-2024. Linux 2.6.32. .TP .B F_GETSIG .TQ -.B F_GETSIG +.B F_SETSIG Linux. .SH BUGS .SS F_GETOWNSignature · 1 line
2.47.3
Signature · 1 line
<https://www.alejandro-colomar.es>
Alejandro Colomar
maintainerQuoted 3 lines · On Tue, Dec 30, 2025 at 04:41:59PM +1000, [email protected] wrote:
From: Seth McDonald <[email protected]>
Hello,
Hi!
Quoted 6 lines
Here's just a few minor fixes I came across.
Hopefully (fingers crossed) the patches will remain intact this time. If so, I may be able to begin sending out some patches for the updated HISTORY sections (currently at 109).
Yep, they all worked fine. I rejected one patch, and applied the others. Thanks!
Cheers,
Alex
Quoted 21 lines
Seth McDonald (4):
man/man2/syscall.2: Add HISTORY section
sys/man2/sysctl.2: HISTORY: wfix
man/man2/utime.2: SYNOPSIS: ffix
man/man2const/F_GETSIG.2const: HISTORY: tfixman/man2/syscall.2 | 3 ++- man/man2/sysctl.2 | 3 +-- man/man2/utime.2 | 2 +- man/man2const/F_GETSIG.2const | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-)Range-diff against v0:
-: ---------- > 1: a2a2a51ede man/man2/syscall.2: Add HISTORY section -: ---------- > 2: 1477de655f sys/man2/sysctl.2: HISTORY: wfix -: ---------- > 3: fad6d60041 man/man2/utime.2: SYNOPSIS: ffix -: ---------- > 4: 2f33ba3b5b man/man2const/F_GETSIG.2const: HISTORY: tfixSignature · 1 line
2.47.3
Signature · 1 line
<https://www.alejandro-colomar.es>