[Toybox] nproc(1)
enh
enh at google.com
Thu May 2 09:20:04 PDT 2024
(to be fair, i was shocked the first time i had to deal with an
Android device where these weren't both the same...)
On Thu, May 2, 2024 at 9:18 AM enh <enh at google.com> wrote:
>
> /facepalm
>
> maybe move your hand-written version into portability just for musl,
> and everyone with a working libc just uses sysconf()?
>
> On Tue, Apr 30, 2024 at 8:26 PM Rob Landley <rob at landley.net> wrote:
> >
> > On 4/29/24 16:56, enh via Toybox wrote:
> > > isn't nproc(1) just a call to sysconf(3) with either
> > > _SC_NPROCESSORS_ONLN for regular behavior, or _SC_NPROCESSORS_CONF for
> > > --all?
> >
> > From musl src/conf/sysconf.c:
> >
> > case JT_NPROCESSORS_CONF & 255:
> > case JT_NPROCESSORS_ONLN & 255: ;
> > unsigned char set[128] = {1};
> > int i, cnt;
> > __syscall(SYS_sched_getaffinity, 0, sizeof set, set);
> > for (i=cnt=0; i<sizeof set; i++)
> > for (; set[i]; set[i]&=set[i]-1, cnt++);
> > return cnt;
> >
> > Musl returns the same thing for "conf" and "online".
> >
> > Rob
More information about the Toybox
mailing list