From: Ruediger Meier Date: Fri, 28 Mar 2014 14:48:41 +0000 (+0100) Subject: tests: getting paraller_jobs more robust X-Git-Tag: v2.25-rc1~394^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6163259cbd8a53a3af381fbf3822e6505704696e;p=thirdparty%2Futil-linux.git tests: getting paraller_jobs more robust This patch fixes several issues: 1. lscpu may not exist on all systems. 2. Option -b is not always available but we can skip it because it's the documented default for -p. 3. Some old lscpu versions print --help output to stdout in case of error. So in case 2. it would count all the help lines as CPUs, which could be really bad on slow single core machines. Signed-off-by: Ruediger Meier --- diff --git a/tests/run.sh b/tests/run.sh index 7b1e4b7c7c..6bc82de0f3 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -24,6 +24,15 @@ top_srcdir= top_builddir= paraller_jobs=1 +function num_cpus() +{ + if lscpu -p &>/dev/null; then + lscpu -p | grep -cv '^#' + else + echo 1 + fi +} + while [ -n "$1" ]; do case "$1" in --force) @@ -55,7 +64,7 @@ while [ -n "$1" ]; do OPTS="$OPTS --parallel" ;; --parallel) - paraller_jobs=$(lscpu -bp | grep -cv '^#') + paraller_jobs=$(num_cpus) OPTS="$OPTS --parallel" ;; --*)