diff options
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/perfmon/intel/uncore.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/plugins/perfmon/intel/uncore.c b/src/plugins/perfmon/intel/uncore.c index a709a8d40be..316ebb13571 100644 --- a/src/plugins/perfmon/intel/uncore.c +++ b/src/plugins/perfmon/intel/uncore.c @@ -15,6 +15,8 @@ #include <vnet/vnet.h> #include <vppinfra/linux/sysfs.h> +#include <vppinfra/bitmap.h> +#include <vppinfra/unix.h> #include <perfmon/perfmon.h> #include <perfmon/intel/core.h> #include <perfmon/intel/uncore.h> @@ -148,12 +150,9 @@ intel_uncore_init (vlib_main_t *vm, perfmon_source_t *src) u32 i, j; u8 *s = 0; - if ((err = clib_sysfs_read ("/sys/devices/system/node/online", "%U", - unformat_bitmap_list, &node_bitmap))) - { - clib_error_free (err); - return clib_error_return (0, "failed to discover numa topology"); - } + node_bitmap = os_get_online_cpu_node_bitmap (); + if (!node_bitmap) + return clib_error_return (0, "failed to discover numa topology"); clib_bitmap_foreach (i, node_bitmap) { |