mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-21 12:30:06 +00:00
Add getcpu
Add #include <sched.h> int getcpu (unsigned int *cpu, unsigned int *node); to return currently used CPU and NUMA node. Tested on x86-64, x32 and i686 as well as with build-many-glibcs.py. * NEWS: Mention getcpu. * include/sched.h (__getcpu): New libc_hidden_proto. * manual/resource.texi: Document getcpu. * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add getcpu. * sysdeps/unix/sysv/linux/Versions (GLIBC_2.29): Add getcpu. * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Add getcpu. * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/bits/sched.h (getcpu): New prototype. * sysdeps/unix/sysv/linux/getcpu.c: New file. * sysdeps/unix/sysv/linux/tst-skeleton-affinity.c (test_size): Also check getcpu.
This commit is contained in:
parent
7c857b6f0d
commit
a092ca9453
43
ChangeLog
43
ChangeLog
@ -1,3 +1,46 @@
|
||||
2018-12-07 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* NEWS: Mention getcpu.
|
||||
* include/sched.h (__getcpu): New libc_hidden_proto.
|
||||
* manual/resource.texi: Document getcpu.
|
||||
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add getcpu.
|
||||
* sysdeps/unix/sysv/linux/Versions (GLIBC_2.29): Add getcpu.
|
||||
* sysdeps/unix/sysv/linux/aarch64/libc.abilist: Add getcpu.
|
||||
* sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist:
|
||||
Likewise.
|
||||
* sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist:
|
||||
Likewise.
|
||||
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist:
|
||||
Likewise.
|
||||
* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist:
|
||||
Likewise.
|
||||
* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist:
|
||||
Likewise.
|
||||
* sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise.
|
||||
* sysdeps/unix/sysv/linux/bits/sched.h (getcpu): New prototype.
|
||||
* sysdeps/unix/sysv/linux/getcpu.c: New file.
|
||||
* sysdeps/unix/sysv/linux/tst-skeleton-affinity.c (test_size):
|
||||
Also check getcpu.
|
||||
|
||||
2018-12-07 Samuel Thibault <samuel.thibault@ens-lyon.org>
|
||||
|
||||
* sysdeps/mach/hurd/spawni.c (child_lookup_under, child_fchdir): New
|
||||
|
3
NEWS
3
NEWS
@ -9,6 +9,9 @@ Version 2.29
|
||||
|
||||
Major new features:
|
||||
|
||||
* The getcpu wrapper function has been added, which returns the currently
|
||||
used CPU and NUMA node. This function is Linux-specific.
|
||||
|
||||
* A new convenience target has been added for distribution maintainers
|
||||
to build and install all locales as directories with files. The new
|
||||
target is run by issuing the following command in your build tree:
|
||||
|
@ -26,5 +26,7 @@ libc_hidden_proto (__clone)
|
||||
extern int __clone2 (int (*__fn) (void *__arg), void *__child_stack_base,
|
||||
size_t __child_stack_size, int __flags, void *__arg, ...);
|
||||
libc_hidden_proto (__clone2)
|
||||
extern __typeof__ (getcpu) __getcpu;
|
||||
libc_hidden_proto (__getcpu)
|
||||
#endif
|
||||
#endif
|
||||
|
@ -1429,6 +1429,27 @@ not leave a processor for the process or thread to run on.
|
||||
This function is a GNU extension and is declared in @file{sched.h}.
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun int getcpu (unsigned int *cpu, unsigned int *node)
|
||||
@standards{Linux, <sched.h>}
|
||||
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
|
||||
The @code{getcpu} function identifies the processor and node on which
|
||||
the calling thread or process is currently running and writes them into
|
||||
the integers pointed to by the @var{cpu} and @var{node} arguments. The
|
||||
processor is a unique nonnegative integer identifying a CPU. The node
|
||||
is a unique nonnegative integer identifying a NUMA node. When either
|
||||
@var{cpu} or @var{node} is @code{NULL}, nothing is written to the
|
||||
respective pointer.
|
||||
|
||||
The return value is @code{0} on success and @code{-1} on failure. The
|
||||
following @code{errno} error condition is defined for this function:
|
||||
|
||||
@table @code
|
||||
@item ENOSYS
|
||||
The operating system does not support this function.
|
||||
@end table
|
||||
|
||||
This function is Linux-specific and is declared in @file{sched.h}.
|
||||
@end deftypefun
|
||||
|
||||
@node Memory Resources
|
||||
@section Querying memory available resources
|
||||
|
@ -142,7 +142,7 @@ endif
|
||||
ifeq ($(subdir),posix)
|
||||
sysdep_headers += bits/initspin.h
|
||||
|
||||
sysdep_routines += sched_getcpu oldglob
|
||||
sysdep_routines += sched_getcpu oldglob getcpu
|
||||
|
||||
tests += tst-affinity tst-affinity-pid
|
||||
|
||||
|
@ -171,6 +171,9 @@ libc {
|
||||
mlock2;
|
||||
pkey_alloc; pkey_free; pkey_set; pkey_get; pkey_mprotect;
|
||||
}
|
||||
GLIBC_2.29 {
|
||||
getcpu;
|
||||
}
|
||||
GLIBC_PRIVATE {
|
||||
# functions used in other libraries
|
||||
__syscall_rt_sigqueueinfo;
|
||||
|
@ -2138,5 +2138,6 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
|
@ -2033,6 +2033,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -123,6 +123,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.4 _Exit F
|
||||
|
@ -86,6 +86,9 @@ extern int unshare (int __flags) __THROW;
|
||||
/* Get index of currently used CPU. */
|
||||
extern int sched_getcpu (void) __THROW;
|
||||
|
||||
/* Get currently used CPU and NUMA node. */
|
||||
extern int getcpu (unsigned int *, unsigned int *) __THROW;
|
||||
|
||||
/* Switch process to namespace of type NSTYPE indicated by FD. */
|
||||
extern int setns (int __fd, int __nstype) __THROW;
|
||||
#endif
|
||||
|
38
sysdeps/unix/sysv/linux/getcpu.c
Normal file
38
sysdeps/unix/sysv/linux/getcpu.c
Normal file
@ -0,0 +1,38 @@
|
||||
/* Copyright (C) 2007-2018 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, see
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <sched.h>
|
||||
#include <sysdep.h>
|
||||
|
||||
#ifdef HAVE_GETCPU_VSYSCALL
|
||||
# define HAVE_VSYSCALL
|
||||
#endif
|
||||
#include <sysdep-vdso.h>
|
||||
|
||||
int
|
||||
__getcpu (unsigned int *cpu, unsigned int *node)
|
||||
{
|
||||
#ifdef __NR_getcpu
|
||||
return INLINE_VSYSCALL (getcpu, 3, cpu, node, NULL);
|
||||
#else
|
||||
__set_errno (ENOSYS);
|
||||
return -1;
|
||||
#endif
|
||||
}
|
||||
weak_alias (__getcpu, getcpu)
|
||||
libc_hidden_def (__getcpu)
|
@ -1880,6 +1880,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -2045,6 +2045,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -1914,6 +1914,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -124,6 +124,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.4 _Exit F
|
||||
|
@ -1989,6 +1989,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -2130,5 +2130,6 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
|
@ -1967,6 +1967,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -1965,6 +1965,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -1973,6 +1973,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -1968,6 +1968,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -2171,5 +2171,6 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
|
@ -1993,6 +1993,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -1997,6 +1997,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -2228,5 +2228,6 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
|
@ -123,6 +123,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 _Exit F
|
||||
|
@ -2100,5 +2100,6 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
|
@ -2002,6 +2002,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -1908,6 +1908,7 @@ GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 __fentry__ F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -1884,6 +1884,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -1996,6 +1996,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -1937,6 +1937,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -189,6 +189,18 @@ test_size (const struct conf *conf, size_t size)
|
||||
printf ("error: Unexpected CPU %d, expected %d\n", active_cpu, cpu);
|
||||
return false;
|
||||
}
|
||||
unsigned int numa_cpu, numa_node;
|
||||
if (getcpu (&numa_cpu, &numa_node) != 0)
|
||||
{
|
||||
printf ("error: getcpu: %m\n");
|
||||
return false;
|
||||
}
|
||||
if ((unsigned int) active_cpu != numa_cpu)
|
||||
{
|
||||
printf ("error: Unexpected CPU %d, expected %d\n",
|
||||
active_cpu, numa_cpu);
|
||||
return false;
|
||||
}
|
||||
if (getaffinity (kernel_size, set2) < 0)
|
||||
{
|
||||
printf ("error: size %zu: getaffinity (2): %m\n", size);
|
||||
|
@ -1895,6 +1895,7 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
GLIBC_2.3 __ctype_b_loc F
|
||||
|
@ -2146,5 +2146,6 @@ GLIBC_2.28 thrd_current F
|
||||
GLIBC_2.28 thrd_equal F
|
||||
GLIBC_2.28 thrd_sleep F
|
||||
GLIBC_2.28 thrd_yield F
|
||||
GLIBC_2.29 getcpu F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
|
||||
GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
|
||||
|
Loading…
Reference in New Issue
Block a user