top: add the major version to dlopen of libnuma soname

When the plug-in approach to NUMA support was added, I
carelessly employed the compile-time linker convention
for naming the library. Technically this then required
the 'devel' package for NUMA support to be present for
the unqualified soname symlink to be available. Either
that or one must have manually created such a symlink.

This commit adds the missing major version to dlopen()
of libnuma.so.1 so simply having a more likely package
such as 'numactl' will enable both '2' & '3' commands.

References(s):
http://www.freelists.org/post/procps/top-NUMA-node-CPU-utilization-support,25
. initial dlopen support
commit edba932a7e

Signed-off-by: Jim Warner <james.warner@comcast.net>
This commit is contained in:
Jim Warner 2013-06-06 00:00:00 -05:00 committed by Craig Small
parent ce0539ecac
commit b55f9b97db

View File

@ -3246,7 +3246,7 @@ static void before (char *me) {
#if defined(PRETEND_NUMA) || defined(PRETEND8CPUS) #if defined(PRETEND_NUMA) || defined(PRETEND8CPUS)
Numa_node_tot = Numa_max_node() + 1; Numa_node_tot = Numa_max_node() + 1;
#else #else
Libnuma_handle = dlopen("libnuma.so", RTLD_LAZY); Libnuma_handle = dlopen("libnuma.so.1", RTLD_LAZY);
if (Libnuma_handle) { if (Libnuma_handle) {
Numa_max_node = dlsym(Libnuma_handle, "numa_max_node"); Numa_max_node = dlsym(Libnuma_handle, "numa_max_node");
Numa_node_of_cpu = dlsym(Libnuma_handle, "numa_node_of_cpu"); Numa_node_of_cpu = dlsym(Libnuma_handle, "numa_node_of_cpu");