Fix hwloc issue on arm
This commit is contained in:
parent
f83a4a61bd
commit
4c1dd1d39f
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,2 +1,3 @@
|
||||
/hwloc-*.tar.bz2
|
||||
/lstopo.desktop
|
||||
/32ppc-4n4c2c.tar.bz2
|
||||
|
36
hwloc-arm.patch
Normal file
36
hwloc-arm.patch
Normal file
@ -0,0 +1,36 @@
|
||||
diff -up hwloc-1.10.1/NEWS.arm hwloc-1.10.1/NEWS
|
||||
diff -up hwloc-1.10.1/src/topology-linux.c.arm hwloc-1.10.1/src/topology-linux.c
|
||||
--- hwloc-1.10.1/src/topology-linux.c.arm 2015-01-19 06:28:30.000000000 -0700
|
||||
+++ hwloc-1.10.1/src/topology-linux.c 2015-04-04 20:25:11.519848174 -0600
|
||||
@@ -2505,6 +2505,10 @@ look_powerpc_device_tree(struct hwloc_to
|
||||
DIR *dt;
|
||||
struct dirent *dirent;
|
||||
|
||||
+ /* only works for Power so far, and not useful on ARM */
|
||||
+ if (strncmp(data->utsname.machine, "ppc", 3))
|
||||
+ return;
|
||||
+
|
||||
ofroot = "/sys/firmware/devicetree/base/cpus";
|
||||
ofrootlen = 34;
|
||||
dt = hwloc_opendir(ofroot, root_fd);
|
||||
@@ -2571,6 +2575,10 @@ look_powerpc_device_tree(struct hwloc_to
|
||||
}
|
||||
free(threads);
|
||||
} else if ((unsigned int)-1 != reg) {
|
||||
+ /* Doesn't work on ARM because cpu "reg" do not start at 0.
|
||||
+ * We know the first cpu "reg" is the lowest. The others are likely
|
||||
+ * in order assuming the device-tree shows objects in order.
|
||||
+ */
|
||||
cpuset = hwloc_bitmap_alloc();
|
||||
hwloc_bitmap_set(cpuset, reg);
|
||||
}
|
||||
diff --git a/tests/linux/32ppc-4n4c2c.output b/tests/linux/32ppc-4n4c2c.output
|
||||
index e0d73dc..733abb4 100644
|
||||
--- a/tests/linux/32ppc-4n4c2c.output
|
||||
+++ b/tests/linux/32ppc-4n4c2c.output
|
||||
@@ -1,4 +1,4 @@
|
||||
-Machine (P#0 total=129236992KB Backend=Linux)
|
||||
+Machine (P#0 total=129236992KB PlatformName=pSeries PlatformModel="CHRP IBM,9125-F2A" Backend=Linux Architecture=ppc)
|
||||
NUMANode L#0 (P#0 local=31195136KB total=31195136KB)
|
||||
L3Cache L#0 (size=32768KB linesize=128)
|
||||
L2Cache L#0 (size=4096KB linesize=128 ways=8)
|
10
hwloc.spec
10
hwloc.spec
@ -6,6 +6,11 @@ License: BSD
|
||||
Group: Applications/System
|
||||
URL: http://www.open-mpi.org/projects/hwloc/
|
||||
Source0: http://www.open-mpi.org/software/hwloc/v1.10/downloads/%{name}-%{version}.tar.bz2
|
||||
# Updated test file for patch below
|
||||
Source1: https://github.com/open-mpi/hwloc/raw/7a9b00834235ddd3c02699cbab7946edf6fc9030/tests/linux/32ppc-4n4c2c.tar.bz2
|
||||
# Fix issue on ARM
|
||||
# https://github.com/open-mpi/hwloc/issues/127
|
||||
Patch0: hwloc-arm.patch
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
|
||||
BuildRequires: cairo-devel
|
||||
@ -76,6 +81,8 @@ Requires: %{name}-plugins%{?_isa} = %{version}-%{release}
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1 -b .arm
|
||||
cp -a %SOURCE1 tests/linux/
|
||||
|
||||
%build
|
||||
autoreconf --force --install
|
||||
@ -140,6 +147,9 @@ make check
|
||||
%{_libdir}/hwloc*
|
||||
|
||||
%changelog
|
||||
* Sat Apr 4 2015 Orion Poplwski <orion@cora.nwra.com> - 1.10.1-2
|
||||
- Fix hwloc issue on arm
|
||||
|
||||
* Wed Apr 1 2015 Orion Poplwski <orion@cora.nwra.com> - 1.10.1-1
|
||||
- Update to version 1.10.1
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user