You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
2.1 KiB
59 lines
2.1 KiB
From a69169698c4c086b7a74602938b329fb055fdf60 Mon Sep 17 00:00:00 2001 |
|
From: Petr Holasek <pholasek@redhat.com> |
|
Date: Mon, 7 Dec 2015 15:32:29 +0100 |
|
Subject: [PATCH] libnuma: supress warnings for non-existing node |
|
|
|
When calling numa_node_to_cpus on non-existing node number (e.g. for |
|
non-contiguous node numbers), a bit confusing warning is supressed. Since |
|
warnings are implemented as weak functions they cannot be overriden when |
|
using dlsym interface. |
|
|
|
Signed-off-by: Petr Holasek <pholasek@redhat.com> |
|
--- |
|
libnuma.c | 24 ++++++++++++++---------- |
|
1 file changed, 14 insertions(+), 10 deletions(-) |
|
|
|
diff --git a/libnuma.c b/libnuma.c |
|
index 3717d5b..549525c 100644 |
|
--- a/libnuma.c |
|
+++ b/libnuma.c |
|
@@ -1276,11 +1276,13 @@ numa_node_to_cpus_v1(int node, unsigned long *buffer, int bufferlen) |
|
sprintf(fn, "/sys/devices/system/node/node%d/cpumap", node); |
|
f = fopen(fn, "r"); |
|
if (!f || getdelim(&line, &len, '\n', f) < 1) { |
|
- numa_warn(W_nosysfs2, |
|
- "/sys not mounted or invalid. Assuming one node: %s", |
|
- strerror(errno)); |
|
- numa_warn(W_nosysfs2, |
|
- "(cannot open or correctly parse %s)", fn); |
|
+ if (numa_bitmask_isbitset(numa_nodes_ptr, node)) { |
|
+ numa_warn(W_nosysfs2, |
|
+ "/sys not mounted or invalid. Assuming one node: %s", |
|
+ strerror(errno)); |
|
+ numa_warn(W_nosysfs2, |
|
+ "(cannot open or correctly parse %s)", fn); |
|
+ } |
|
bitmask.maskp = (unsigned long *)mask; |
|
bitmask.size = buflen_needed * 8; |
|
numa_bitmask_setall(&bitmask); |
|
@@ -1355,11 +1357,13 @@ numa_node_to_cpus_v2(int node, struct bitmask *buffer) |
|
sprintf(fn, "/sys/devices/system/node/node%d/cpumap", node); |
|
f = fopen(fn, "r"); |
|
if (!f || getdelim(&line, &len, '\n', f) < 1) { |
|
- numa_warn(W_nosysfs2, |
|
- "/sys not mounted or invalid. Assuming one node: %s", |
|
- strerror(errno)); |
|
- numa_warn(W_nosysfs2, |
|
- "(cannot open or correctly parse %s)", fn); |
|
+ if (numa_bitmask_isbitset(numa_nodes_ptr, node)) { |
|
+ numa_warn(W_nosysfs2, |
|
+ "/sys not mounted or invalid. Assuming one node: %s", |
|
+ strerror(errno)); |
|
+ numa_warn(W_nosysfs2, |
|
+ "(cannot open or correctly parse %s)", fn); |
|
+ } |
|
numa_bitmask_setall(mask); |
|
err = -1; |
|
} |
|
-- |
|
2.4.3
|
|
|