RE: git: 2c1963d46335 - main - procfs rlimit: handle pipebuf [and related] :pipebuf . . . Invalid argument

From: Mark Millard <marklmi_at_yahoo.com>
Date: Sun, 06 Oct 2024 01:14:40 UTC
Konstantin Belousov <kib_at_FreeBSD.org> wrote on
Date: Fri, 20 Sep 2024 21:09:29 UTC :

> The branch main has been updated by kib:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=2c1963d46335576d29fe21a4e7b424c47b711ef4
> 
> commit 2c1963d46335576d29fe21a4e7b424c47b711ef4
> Author: Konstantin Belousov <kib@FreeBSD.org>
> AuthorDate: 2024-09-20 15:04:06 +0000
> Commit: Konstantin Belousov <kib@FreeBSD.org>
> CommitDate: 2024-09-20 21:08:51 +0000
> 
> procfs rlimit: handle pipebuf
> 
> Sponsored by: The FreeBSD Foundation
> MFC after: 1 week
> ---
> sys/sys/resource.h | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/sys/sys/resource.h b/sys/sys/resource.h
> index c18e45d50b30..81346028f1ed 100644
> --- a/sys/sys/resource.h
> +++ b/sys/sys/resource.h
> @@ -127,7 +127,7 @@ struct __wrusage {
> */
> 
> #ifdef _RLIMIT_IDENT
> -static const char *rlimit_ident[RLIM_NLIMITS] = {
> +static const char *rlimit_ident[] = {
> "cpu",
> "fsize",
> "data",
> @@ -143,6 +143,7 @@ static const char *rlimit_ident[RLIM_NLIMITS] = {
> "swap",
> "kqueues",
> "umtx",
> + "pipebuf",
> };
> #endif

As part of an experiment I just had 1500024 (somewhat after the
libmd.so.{6 -> 7} update) boot with a 1500023 kernel that was
somewhat before the fairly recent pipebuf related changes, such
as the above. This produced a bunch of error messages, such as:


. . .
ugen0.7: <Microchip Hub Feature Controller> at usbus0 (disconnected)
Warning: no time-of-day clock registered, system time will not be set accurately
2024-10-05T17:33:58.032649-07:00 - init 20 - - getting pipebuf resource limit: Invalid argument
. . .
Starting devd.
limits: setrlimit pipebuf: Invalid argument
/etc/rc: WARNING: failed to start devd
Waiting 30s for the default route interface: .............................
. . .
Starting syslogd.
limits: setrlimit pipebuf: Invalid argument
/etc/rc: WARNING: failed to start syslogd
. . .
Starting rpcbind.
limits: setrlimit pipebuf: Invalid argument
/etc/rc: WARNING: failed to start rpcbind
NFS access cache time=60
Starting ntpd.
limits: setrlimit pipebuf: Invalid argument
/etc/rc: WARNING: failed to start ntpd
. . .
Starting rpcbind.
limits: setrlimit pipebuf: Invalid argument
/etc/rc.d/mountd: WARNING: Unable to force rpcbind. It may already be running.
Starting mountd.
limits: setrlimit pipebuf: Invalid argument
/etc/rc: WARNING: Unable to force mountd. It may already be running.
/etc/rc: WARNING: failed precmd routine for nfsd
. . .
Starting sshd.
limits: setrlimit pipebuf: Invalid argument
/etc/rc: WARNING: failed to start sshd
Starting cron.
limits: setrlimit pipebuf: Invalid argument
/etc/rc: WARNING: failed to start cron
. . .
2024-10-06T00:34:50.800786-07:00 aarch64-main-pbase init 1014 - - getting pipebuf resource limit: Invalid argument
2024-10-06T00:34:50.800858-07:00 aarch64-main-pbase init 1015 - - getting pipebuf resource limit: Invalid argument
2024-10-06T00:34:50.800939-07:00 aarch64-main-pbase init 1016 - - getting pipebuf resource limit: Invalid argument
2024-10-06T00:34:50.801101-07:00 aarch64-main-pbase init 1018 - - getting pipebuf resource limit: Invalid argument
2024-10-06T00:34:50.801090-07:00 aarch64-main-pbase init 1017 - - getting pipebuf resource limit: Invalid argument
2024-10-06T00:34:50.801240-07:00 aarch64-main-pbase init 1020 - - getting pipebuf resource limit: Invalid argument
2024-10-06T00:34:50.801250-07:00 aarch64-main-pbase init 1019 - - getting pipebuf resource limit: Invalid argument
2024-10-06T00:34:50.801406-07:00 aarch64-main-pbase init 1021 - - getting pipebuf resource limit: Invalid argument
ugen0.6: <PixArt USB Optical Mouse> at usbus0
2024-10-06T00:35:08.833554-07:00 aarch64-main-pbase login 1014 - - login on ttyv0 as root
2024-10-06T00:35:08.833623-07:00 aarch64-main-pbase login 1014 - - ROOT LOGIN (root) ON ttyv0
2024-10-06T00:35:08.835269-07:00 aarch64-main-pbase login 1022 - - getting pipebuf resource limit: Invalid argument
. . .


It seems related changes introducing incompatibility with even
recent older kernels should have had a __FreeBSD_version update
and might need to be documented for the now-existing
incompatibility with most of the 1500023 and older history?

===
Mark Millard
marklmi at yahoo.com