summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-oe/recipes-support/numactl/numactl/Fix-the-test-output-format.patch59
-rw-r--r--meta-oe/recipes-support/numactl/numactl/Makefile7
-rw-r--r--meta-oe/recipes-support/numactl/numactl/fix-null-pointer.patch28
-rwxr-xr-xmeta-oe/recipes-support/numactl/numactl/run-ptest9
-rw-r--r--meta-oe/recipes-support/numactl/numactl_2.0.9.bb43
5 files changed, 146 insertions, 0 deletions
diff --git a/meta-oe/recipes-support/numactl/numactl/Fix-the-test-output-format.patch b/meta-oe/recipes-support/numactl/numactl/Fix-the-test-output-format.patch
new file mode 100644
index 000000000..8c309a4b5
--- /dev/null
+++ b/meta-oe/recipes-support/numactl/numactl/Fix-the-test-output-format.patch
@@ -0,0 +1,59 @@
1[PATCH] Fix the test output format
2
3Upstream-Status: Pending
4
5Signed-off-by: Roy Li <rongqing.li@windriver.com>
6---
7 test/regress | 6 +++---
8 test/regress2 | 9 ++++-----
9 2 files changed, 7 insertions(+), 8 deletions(-)
10
11diff --git a/test/regress b/test/regress
12index 05eff5b..10d72f7 100755
13--- a/test/regress
14+++ b/test/regress
15@@ -73,6 +73,7 @@ probe_hardware()
16 if [ $numnodes -lt 2 ] ; then
17 echo "need at least two nodes with at least $NEEDPAGES each of"
18 echo "free memory for mempolicy regression tests"
19+ echo "FAIL: numa regress"
20 exit 1
21 fi
22 }
23@@ -206,10 +207,9 @@ main()
24 rm A B
25
26 if [ "$EXIT" = 0 ] ; then
27- echo '========SUCCESS'
28+ echo 'PASS: numactl regress'
29 else
30- echo '========FAILURE'
31- exit 1
32+ echo 'FAIL: numactl regress'
33 fi
34 }
35
36diff --git a/test/regress2 b/test/regress2
37index 6a254fa..9c97943 100755
38--- a/test/regress2
39+++ b/test/regress2
40@@ -6,12 +6,11 @@ VALGRIND=${VALGRIND:-}
41 export LD_LIBRARY_PATH=`pwd`/..
42
43 T() {
44- echo "$@"
45- if ! $VALGRIND "$@" ; then
46- echo $1 FAILED!!!!
47- exit 1
48+ if ! $VALGRIND "$@" 2>&1 1>/dev/null; then
49+ echo "FAIL: $1"
50+ else
51+ echo "PASS: $1"
52 fi
53- echo
54 }
55
56 # various tests
57--
581.7.10.4
59
diff --git a/meta-oe/recipes-support/numactl/numactl/Makefile b/meta-oe/recipes-support/numactl/numactl/Makefile
new file mode 100644
index 000000000..9a5134c3f
--- /dev/null
+++ b/meta-oe/recipes-support/numactl/numactl/Makefile
@@ -0,0 +1,7 @@
1.PHONY: regress1 regress2
2
3regress1:
4 cd test ; ./regress
5
6regress2:
7 cd test ; ./regress2
diff --git a/meta-oe/recipes-support/numactl/numactl/fix-null-pointer.patch b/meta-oe/recipes-support/numactl/numactl/fix-null-pointer.patch
new file mode 100644
index 000000000..53952aef9
--- /dev/null
+++ b/meta-oe/recipes-support/numactl/numactl/fix-null-pointer.patch
@@ -0,0 +1,28 @@
1[PATCH] return 0 if distance_table is NULL
2
3Upstream-Status: Pending
4
5read_distance_table() maybe return 0, but distance_table is not set,
6if distance_table is used, and will lead to SEGFAULT
7
8Signed-off-by: Roy Li <rongqing.li@windriver.com>
9---
10 distance.c | 2 ++
11 1 file changed, 2 insertions(+)
12
13diff --git a/distance.c b/distance.c
14index 4a26972..c6ca021 100755
15--- a/distance.c
16+++ b/distance.c
17@@ -113,6 +113,8 @@ int numa_distance(int a, int b)
18 int err = read_distance_table();
19 if (err < 0)
20 return 0;
21+ if (!distance_table)
22+ return 0;
23 }
24 return distance_table[a * distance_numnodes + b];
25 }
26--
271.7.10.4
28
diff --git a/meta-oe/recipes-support/numactl/numactl/run-ptest b/meta-oe/recipes-support/numactl/numactl/run-ptest
new file mode 100755
index 000000000..215f7c25b
--- /dev/null
+++ b/meta-oe/recipes-support/numactl/numactl/run-ptest
@@ -0,0 +1,9 @@
1#!/bin/sh
2make regress1
3make regress2
4if numademo -t -e 10M; then
5 echo "PASS: numademo"
6else
7 echo "FAIL: numademo"
8fi
9
diff --git a/meta-oe/recipes-support/numactl/numactl_2.0.9.bb b/meta-oe/recipes-support/numactl/numactl_2.0.9.bb
new file mode 100644
index 000000000..bbb3393a4
--- /dev/null
+++ b/meta-oe/recipes-support/numactl/numactl_2.0.9.bb
@@ -0,0 +1,43 @@
1SUMMARY = "Development package for building Applications that use numa"
2DESCRIPTION = "Simple NUMA policy support. It consists of a numactl program \
3to run other programs with a specific NUMA policy and a libnuma to do \
4allocations with NUMA policy in applications."
5LICENSE = "GPL-2.0 & LGPL-2.1"
6SECTION = "apps"
7RDEPENDS_${PN} = "perl"
8
9inherit autotools-brokensep ptest
10
11LIC_FILES_CHKSUM = "file://README;beginline=19;endline=32;md5=5644cc3851cb2499f6c48e52fe198bd9"
12SRC_URI[md5sum] = "136685c8eaf9d6569c351fe1d453b30c"
13SRC_URI[sha256sum] = "9ca033e6c14c0f26c20379b0cf9299429fd5a354a79c3c7880fd41ef69f7751c"
14
15SRC_URI = "ftp://oss.sgi.com/www/projects/libnuma/download/${BPN}-${PV}.tar.gz \
16 file://fix-null-pointer.patch \
17 file://Fix-the-test-output-format.patch \
18 file://Makefile \
19 file://run-ptest \
20 "
21
22# ARM does not currently support NUMA
23COMPATIBLE_HOST = "^((?!arm).*)$"
24
25do_install() {
26 oe_runmake DESTDIR=${D} prefix=${D}/usr libdir=${D}/${libdir} install
27 #remove the empty man2 directory
28 rm -r ${D}${mandir}/man2
29}
30
31do_install_ptest() {
32 #install tests binaries
33 local test_binaries="checkaffinity checktopology distance \
34 ftok mbind_mig_pages migrate_pages move_pages mynode \
35 nodemap pagesize prefered printcpu randmap realloc_test \
36 regress regress2 runltp shmtest tbitmap tshared"
37
38 [ ! -d ${D}/${PTEST_PATH}/test ] && mkdir -p ${D}/${PTEST_PATH}/test
39 for i in $test_binaries; do
40 install -m 0755 ${B}/test/$i ${D}${PTEST_PATH}/test
41 done
42 install -m 0755 ${WORKDIR}/Makefile ${D}${PTEST_PATH}/
43}