From 4b6614030f384f7c8d847360cacf5c7f7560c6be Mon Sep 17 00:00:00 2001 From: Damjan Marion Date: Thu, 29 Feb 2024 16:14:27 +0100 Subject: vppinfra: add os_get_online_cpu_core() and os_get_online_cpu_node() Type: improvement Change-Id: I6f99f09c7724ce656a4f41a1d5f9c88d74c00faf Signed-off-by: Damjan Marion --- src/vppinfra/unix-misc.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/vppinfra/unix-misc.c') diff --git a/src/vppinfra/unix-misc.c b/src/vppinfra/unix-misc.c index 6a7328bd873..623b2e98555 100644 --- a/src/vppinfra/unix-misc.c +++ b/src/vppinfra/unix-misc.c @@ -37,8 +37,12 @@ #include #include +#include #include #include +#ifdef __linux__ +#include +#endif #include #include @@ -260,6 +264,26 @@ os_get_nthreads (void) return 1; } +__clib_export clib_bitmap_t * +os_get_online_cpu_core_bitmap () +{ +#if __linux__ + return clib_sysfs_list_to_bitmap ("/sys/devices/system/cpu/online"); +#else + return 0; +#endif +} + +__clib_export clib_bitmap_t * +os_get_online_cpu_node_bitmap () +{ +#if __linux__ + return clib_sysfs_list_to_bitmap ("/sys/devices/system/node/online"); +#else + return 0; +#endif +} + /* * fd.io coding-style-patch-verification: ON * -- cgit 1.2.3-korg