Date: Mon, 7 Oct 2024 01:05:19 -0400 From: David Cross <dcrosstech@gmail.com> To: Marek Zarychta <zarychtam@plan-b.pwste.edu.pl> Cc: freebsd-hackers@freebsd.org Subject: Re: Review D38047 ... and then there was one.... Message-ID: <DB1FFEBD-1FD4-43A5-9899-85C6DD292E3E@gmail.com> In-Reply-To: <1fd47603-0bf2-4fcf-a556-22335d99e203@plan-b.pwste.edu.pl> References: <1fd47603-0bf2-4fcf-a556-22335d99e203@plan-b.pwste.edu.pl>
next in thread | previous in thread | raw e-mail | index | archive | help
How many entries are in your ldap structure? I can attempt a replication he= re > On Oct 7, 2024, at 12:08=E2=80=AFAM, Marek Zarychta <zarychtam@plan-b.pwst= e.edu.pl> wrote: >=20 > =EF=BB=BFW dniu 7.10.2024 o 00:36, Mark Millard pisze: >> Marek Zarychta <zarychtam_at_plan-b.pwste.edu.pl> wrote on >> Date: Sun, 06 Oct 2024 20:13:58 UTC : >>=20 >>> W dniu 6.10.2024 o 22:04, David Cross pisze: >>>> Here=E2=80=99s the thing. The current implementation of nscd DOESN=E2=80= =99T WORK at all. There is a symbol that nscd exports that libc is supposed t= o use as a flag to bypass lookups for nscd itself. But that symbol isn=E2=80= =99t exported right. >>>>=20 >>>> You will need to recompile libc and nscd. (I just do a buildworld to ma= ke sure i get everything as there are makefile changes related to the aforem= entioned symbol changes. >>> Yes, without world installed this patched nscd won't even start: >>>=20 >>> [host] /usr/src# service nscd start >>> Starting nscd. >>> limits: setrlimit pipebuf: Invalid argument >>> /etc/rc.d/nscd: WARNING: failed to start nscd >> . . . >>=20 >> This note is only about the "limits: setrlimit pipebuf: >> Invalid argument" notice. >>=20 >> The main [so: 15] pipebuf related commits were done during >> 2024-Sep-20 UTC. If one has a kernel that predates those but >> a world for which limits now tries to use the new pipebuf >> material, the result is messages like that: >>=20 >> limits: setrlimit pipebuf: Invalid argument >>=20 >> (or related such messages). >>=20 >>=20 >> For reference for main [so: 15]: >>=20 >> Fri, 20 Sep 2024 >> . . . >> =E2=80=A2 git: 3458bbd39778 - main - kernel: add RLIMIT_PIPEBUF Konst= antin Belousov >> =E2=80=A2 git: 54a8d1fbbf65 - main - getrlimit(2): document RLIMIT_PI= PEBUF Konstantin Belousov >> =E2=80=A2 git: a4c04958f526 - main - libutil: support RLIMIT_PIPEBUF K= onstantin Belousov >> =E2=80=A2 git: 5d92f20c7d31 - main - bin/sh: support RLIMIT_PIPEBUF K= onstantin Belousov >> =E2=80=A2 git: f54f41403d14 - main - usr.bin/limits: support RLIMIT_P= IPEBUF Konstantin Belousov >> =E2=80=A2 git: b029e29e0d8b - main - login.conf: add a placeholder fo= r the pipebuf limit Konstantin Belousov >> =E2=80=A2 git: 80133d678ecb - main - procstat: support RLIMIT_PIPEBUF= Konstantin Belousov >> =E2=80=A2 git: 8ae779832c6f - main - privs: add PRIV_PIPEBUF Konstant= in Belousov >> =E2=80=A2 git: 7672cbef2c1e - main - pipes: reserve configured percen= tage of buffers zone to superuser Konstantin Belousov >> . . . >> =E2=80=A2 git: d6074f73af5c - main - pipe: use pipe subsystem KVA cou= nter instead of pipe_map size Konstantin Belousov >> =E2=80=A2 git: 40769168a5ee - main - pipespace_new(): decrease uidinf= o pipebuf usage if reservation check failed Konstantin Belousov >> . . . >> =E2=80=A2 git: a52b30ff98cd - main - sys_pipe: consistently use cr_ru= idinfo for accounting of pipebuf Konstantin Belousov >> =E2=80=A2 git: af96ccc6a508 - main - uifree(9): report non-zero value= s for all shared resources Konstantin Belousov >> =E2=80=A2 git: 2c1963d46335 - main - procfs rlimit: handle pipebuf Ko= nstantin Belousov >> =E2=80=A2 git: c84d8db0ab3d - main - procfs: ensure that RLIMIT_IDENT= is properly updated when a limit is added Konstantin Belousov >>=20 >> The combination of an older kernel and a newer world will not be >> nicely behaved when any non-kernel code from the above ends up >> involved. >>=20 >>=20 >> stable/14 has now also had the commits: >>=20 >> Sat, 05 Oct 2024 >> =E2=80=A2 git: 1508dce2502d - stable/14 - procfs: ensure that RLIMIT_= IDENT is properly updated when a limit is added Konstantin Belousov >> . . . >> =E2=80=A2 git: b7eecc86c3bd - stable/14 - kernel: add RLIMIT_PIPEBUF K= onstantin Belousov >> =E2=80=A2 git: d20f0dae2f97 - stable/14 - getrlimit(2): document RLIM= IT_PIPEBUF Konstantin Belousov >> =E2=80=A2 git: a03f7c040ce7 - stable/14 - libutil: support RLIMIT_PIP= EBUF Konstantin Belousov >> =E2=80=A2 git: d5ed8778bf3b - stable/14 - bin/sh: support RLIMIT_PIPE= BUF Konstantin Belousov >> =E2=80=A2 git: 25902860b270 - stable/14 - usr.bin/limits: support RLI= MIT_PIPEBUF Konstantin Belousov >> =E2=80=A2 git: 524b9810de6a - stable/14 - login.conf: add a placehold= er for the pipebuf limit Konstantin Belousov >> =E2=80=A2 git: 6600090e678e - stable/14 - procstat: support RLIMIT_PI= PEBUF Konstantin Belousov >> =E2=80=A2 git: fd9babb1b85f - stable/14 - privs: add PRIV_PIPEBUF Kon= stantin Belousov >> =E2=80=A2 git: d532d9926ee7 - stable/14 - pipes: reserve configured p= ercentage of buffers zone to superuser Konstantin Belousov >> =E2=80=A2 git: 6536b979b856 - stable/14 - pipe: use pipe subsystem KV= A counter instead of pipe_map size Konstantin Belousov >> =E2=80=A2 git: a8c663bb4261 - stable/14 - pipespace_new(): decrease u= idinfo pipebuf usage if reservation check failed Konstantin Belousov >> =E2=80=A2 git: c15b2e046e8c - stable/14 - sys_pipe: consistently use c= r_ruidinfo for accounting of pipebuf Konstantin Belousov >> . . . >> =E2=80=A2 git: fc9070bf1d16 - stable/14 - procfs rlimit: handle pipeb= uf Konstantin Belousov >> . . . >>=20 >> Again, the combination of an older kernel and a newer world will not be >> nicely behaved. >>=20 >> =3D=3D=3D >> Mark Millard >> marklmi at yahoo.com >>=20 >>=20 >>=20 > Thank you for this deep investigation. Anyway, after the kernel and world u= pdate, I could test the patch, but there was no significant progress, at lea= st in lookup timing (as I pointed out before). >=20 > -- > Marek Zarychta >=20 >=20
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?DB1FFEBD-1FD4-43A5-9899-85C6DD292E3E>