diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2021-09-06 14:19:51 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2021-09-27 09:18:43 -0300 |
commit | 342298278eabc75baabcaced110a11a02c3d3580 (patch) | |
tree | ae6fe68d4eab8eeca0f71ae26330edbafcf47443 /io/tst-lutimes-time64.c | |
parent | 33099d72e41cf8a129b362e9709eb2be9372d844 (diff) | |
download | glibc-342298278eabc75baabcaced110a11a02c3d3580.tar.gz glibc-342298278eabc75baabcaced110a11a02c3d3580.tar.xz glibc-342298278eabc75baabcaced110a11a02c3d3580.zip |
linux: Revert the use of sched_getaffinity on get_nproc (BZ #28310)
The use of sched_getaffinity on get_nproc and sysconf (_SC_NPROCESSORS_ONLN) done in 903bc7dcc2acafc40 (BZ #27645) breaks the top command in common hypervisor configurations and also other monitoring tools. The main issue using sched_getaffinity changed the symbols semantic from system-wide scope of online CPUs to per-process one (which can be changed with kernel cpusets or book parameters in VM). This patch reverts mostly of the 903bc7dcc2acafc40, with the exceptions: * No more cached values and atomic updates, since they are inherent racy. * No /proc/cpuinfo fallback, since /proc/stat is already used and it would require to revert more arch-specific code. * The alloca is replace with a static buffer of 1024 bytes. So the implementation first consult the sysfs, and fallbacks to procfs. Checked on x86_64-linux-gnu. Reviewed-by: Florian Weimer <fweimer@redhat.com>
Diffstat (limited to 'io/tst-lutimes-time64.c')
0 files changed, 0 insertions, 0 deletions