From 723e5fbb9d3e059b484467620cd72b1f884d7fe7 Mon Sep 17 00:00:00 2001 From: Jaromir Capik Date: Wed, 12 Jun 2013 18:57:35 +0200 Subject: [PATCH] - Adding major version in the libnuma soname --- ...r-version-to-dlopen-of-libnuma-sonam.patch | 42 +++++++++++++++++++ procps-ng.spec | 9 +++- 2 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 0001-top-add-the-major-version-to-dlopen-of-libnuma-sonam.patch diff --git a/0001-top-add-the-major-version-to-dlopen-of-libnuma-sonam.patch b/0001-top-add-the-major-version-to-dlopen-of-libnuma-sonam.patch new file mode 100644 index 0000000..5b12dce --- /dev/null +++ b/0001-top-add-the-major-version-to-dlopen-of-libnuma-sonam.patch @@ -0,0 +1,42 @@ +From a6dfe2648a39d5fed8de0361aecf0e035ad80222 Mon Sep 17 00:00:00 2001 +From: Jim Warner +Date: Thu, 6 Jun 2013 00:00:00 -0500 +Subject: [PATCH] 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 edba932a7e9b950dd91bc486e107788e977a5186 + +Signed-off-by: Jim Warner +--- + top/top.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/top/top.c b/top/top.c +index c1853ee..1d38c0f 100644 +--- a/top/top.c ++++ b/top/top.c +@@ -3246,7 +3246,7 @@ static void before (char *me) { + #if defined(PRETEND_NUMA) || defined(PRETEND8CPUS) + Numa_node_tot = Numa_max_node() + 1; + #else +- Libnuma_handle = dlopen("libnuma.so", RTLD_LAZY); ++ Libnuma_handle = dlopen("libnuma.so.1", RTLD_LAZY); + if (Libnuma_handle) { + Numa_max_node = dlsym(Libnuma_handle, "numa_max_node"); + Numa_node_of_cpu = dlsym(Libnuma_handle, "numa_node_of_cpu"); +-- +1.8.1.2 + diff --git a/procps-ng.spec b/procps-ng.spec index d5dda48..83a9cf0 100644 --- a/procps-ng.spec +++ b/procps-ng.spec @@ -3,13 +3,15 @@ Summary: System and process monitoring utilities Name: procps-ng Version: 3.3.8 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ and LGPLv2+ Group: Applications/System URL: https://sourceforge.net/projects/procps-ng/ Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.xz +Patch0: 0001-top-add-the-major-version-to-dlopen-of-libnuma-sonam.patch + Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig @@ -64,6 +66,8 @@ System and process monitoring utilities development headers %prep %setup -q -n %{name}-%{version} +%patch0 -p1 + %build # The following stuff is needed for git archives only #echo "%{version}" > .tarball-version @@ -126,6 +130,9 @@ mkdir -p %{buildroot}%{_sysconfdir}/sysctl.d %{_includedir}/proc %changelog +* Wed Jun 12 2013 Jaromir Capik - 3.3.8-3 +- Adding major version in the libnuma soname + * Thu May 30 2013 Jaromir Capik - 3.3.8-2 - watch: enabling UTF-8 (#965867)