glibc/include/sys/sysinfo.h
Adhemerval Zanella 3fcb410465 malloc: Use __get_nprocs on arena_get2 (BZ 30945)
This restore the 2.33 semantic for arena_get2.  It was changed by
11a02b035b to avoid arena_get2 call malloc (back when __get_nproc
was refactored to use an scratch_buffer - 903bc7dcc2).  The
__get_nproc was refactored over then and now it also avoid to call
malloc.

The 11a02b035b did not take in consideration any performance
implication, which should have been discussed properly.  The
__get_nprocs_sched is still used as a fallback mechanism if procfs
and sysfs is not acessible.

Checked on x86_64-linux-gnu.
Reviewed-by: DJ Delorie <dj@redhat.com>

(cherry picked from commit 472894d2cf)
2024-02-12 10:20:44 -03:00

30 lines
892 B
C

#ifndef _SYS_SYSINFO_H
#include_next <sys/sysinfo.h>
# ifndef _ISOMAC
/* Now we define the internal interface. */
/* Return number of configured processors. */
extern int __get_nprocs_conf (void);
libc_hidden_proto (__get_nprocs_conf)
/* Return number of available processors (not all of them will be
available to the caller process). */
extern int __get_nprocs (void);
libc_hidden_proto (__get_nprocs)
/* Return number of physical pages of memory in the system. */
extern long int __get_phys_pages (void);
libc_hidden_proto (__get_phys_pages)
/* Return number of available physical pages of memory in the system. */
extern long int __get_avphys_pages (void);
libc_hidden_proto (__get_avphys_pages)
/* Return maximum number of processes this real user ID can have. */
extern long int __get_child_max (void) attribute_hidden;
# endif /* !_ISOMAC */
#endif /* sys/sysinfo.h */