1*4882a593SmuzhiyunFrom 0077532b07e268347cb8557be6d70148d5f0e840 Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Ting Liu <b28495@freescale.com>
3*4882a593SmuzhiyunDate: Wed, 21 Aug 2013 15:44:57 +0800
4*4882a593SmuzhiyunSubject: [PATCH] run_test.py: not use hard coded path ../obj/hugeadm
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunHard coded path makes the script impossible to run out of source tree.
7*4882a593SmuzhiyunAfter 'make install', we can use hugeadm utility under DESTDIR.
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunUpstream-Status: Submitted
10*4882a593Smuzhiyun
11*4882a593SmuzhiyunSigned-off-by: Ting Liu <b28495@freescale.com>
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunUpdate for 2.22.
14*4882a593SmuzhiyunSigned-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
15*4882a593Smuzhiyun
16*4882a593SmuzhiyunUpdate to work for python3
17*4882a593SmuzhiyunSigned-off-by: Changqing Li <changqing.li@windriver.com>
18*4882a593Smuzhiyun---
19*4882a593Smuzhiyun tests/run_tests.py | 12 +++++++++++-
20*4882a593Smuzhiyun 1 file changed, 11 insertions(+), 1 deletion(-)
21*4882a593Smuzhiyun
22*4882a593Smuzhiyundiff --git a/tests/run_tests.py b/tests/run_tests.py
23*4882a593Smuzhiyunindex 018264d..0aabcd1 100755
24*4882a593Smuzhiyun--- a/tests/run_tests.py
25*4882a593Smuzhiyun+++ b/tests/run_tests.py
26*4882a593Smuzhiyun@@ -245,9 +245,19 @@ def get_pagesizes():
27*4882a593Smuzhiyun     Use libhugetlbfs' hugeadm utility to get a list of page sizes that have
28*4882a593Smuzhiyun     active mount points and at least one huge page allocated to the pool.
29*4882a593Smuzhiyun     """
30*4882a593Smuzhiyun+    local_env = os.environ.copy()
31*4882a593Smuzhiyun+    local_env["PATH"] = "../obj:%s" % local_env.get("PATH", "")
32*4882a593Smuzhiyun     sizes = set()
33*4882a593Smuzhiyun     out = ""
34*4882a593Smuzhiyun-    (rc, out) = bash("../obj/hugeadm --page-sizes")
35*4882a593Smuzhiyun+    try:
36*4882a593Smuzhiyun+        p = subprocess.Popen("hugeadm --page-sizes", shell=True, env=local_env, stdout=subprocess.PIPE)
37*4882a593Smuzhiyun+        rc = p.wait()
38*4882a593Smuzhiyun+    except KeyboardInterrupt:
39*4882a593Smuzhiyun+        return sizes
40*4882a593Smuzhiyun+    except OSError:
41*4882a593Smuzhiyun+        return sizes
42*4882a593Smuzhiyun+    out = p.stdout.read().decode().strip()
43*4882a593Smuzhiyun+
44*4882a593Smuzhiyun     if rc != 0 or out == "":
45*4882a593Smuzhiyun         return sizes
46*4882a593Smuzhiyun
47*4882a593Smuzhiyun--
48*4882a593Smuzhiyun2.7.4
49*4882a593Smuzhiyun
50