selftests: intel_pstate: compile programs if executable not found

Message ID 1505386269-15774-1-git-send-email-naresh.kamboju@linaro.org
State New
Headers show
Series
  • selftests: intel_pstate: compile programs if executable not found
Related show

Commit Message

Naresh Kamboju Sept. 14, 2017, 10:51 a.m.
From: Naresh Kamboju <naresh.kamboju@linaro.org>


Test exit due to aperf.c: No such file or directory
./run.sh
gcc: error: aperf.c: No such file or directory
Problem compiling aperf.c.

The Makefile installs executable programs "aperf" and "msr"
so skip compile on target.

Signed-off-by: Naresh Kamboju <naresh.kamboju@linaro.org>

---
 tools/testing/selftests/intel_pstate/run.sh | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

-- 
2.13.0

Comments

Shuah Khan Sept. 14, 2017, 2:42 p.m. | #1
Hi Naresh,

On 09/14/2017 04:51 AM, naresh.kamboju@linaro.org wrote:
> From: Naresh Kamboju <naresh.kamboju@linaro.org>

> 

> Test exit due to aperf.c: No such file or directory

> ./run.sh

> gcc: error: aperf.c: No such file or directory

> Problem compiling aperf.c.

> 


Please give me more details on where do you see this problem?
I don't think the below is the right fix. It adds checks for
executables and they doesn't exist, goes and tries to build.

> The Makefile installs executable programs "aperf" and "msr"

> so skip compile on target.

> 

> Signed-off-by: Naresh Kamboju <naresh.kamboju@linaro.org>

> ---

>  tools/testing/selftests/intel_pstate/run.sh | 15 ++++++++++-----

>  1 file changed, 10 insertions(+), 5 deletions(-)

> 

> diff --git a/tools/testing/selftests/intel_pstate/run.sh b/tools/testing/selftests/intel_pstate/run.sh

> index 7868c106b8b1..2149b9b5876a 100755

> --- a/tools/testing/selftests/intel_pstate/run.sh

> +++ b/tools/testing/selftests/intel_pstate/run.sh

> @@ -31,11 +31,16 @@ EVALUATE_ONLY=0

>  

>  max_cpus=$(($(nproc)-1))

>  

> -# compile programs

> -gcc aperf.c -Wall -D_GNU_SOURCE -o aperf  -lm

> -[ $? -ne 0 ] && echo "Problem compiling aperf.c." && exit 1

> -gcc -o msr msr.c -lm

> -[ $? -ne 0 ] && echo "Problem compiling msr.c." && exit 1

> +# Compile programs if executable not found

> +if [ ! -x aperf ]; then

> +	gcc aperf.c -Wall -D_GNU_SOURCE -o aperf  -lm

> +	[ $? -ne 0 ] && echo "Problem compiling aperf.c." && exit 1

> +fi

> +

> +if [ ! -x msr ]; then

> +	gcc -o msr msr.c -lm

> +	[ $? -ne 0 ] && echo "Problem compiling msr.c." && exit 1

> +fi


As such run.sh shouldn't have any compile code. These should
be strictly for running tests.

Instead of adding checks, please remove the compile logic from this
file. 

thanks,
-- Shuah
Shuah Khan Sept. 14, 2017, 2:47 p.m. | #2
On 09/14/2017 08:42 AM, Shuah Khan wrote:
> Hi Naresh,

> 

> On 09/14/2017 04:51 AM, naresh.kamboju@linaro.org wrote:

>> From: Naresh Kamboju <naresh.kamboju@linaro.org>

>>

>> Test exit due to aperf.c: No such file or directory

>> ./run.sh

>> gcc: error: aperf.c: No such file or directory

>> Problem compiling aperf.c.

>>

> 

> Please give me more details on where do you see this problem?

> I don't think the below is the right fix. It adds checks for

> executables and they doesn't exist, goes and tries to build.

> 

>> The Makefile installs executable programs "aperf" and "msr"

>> so skip compile on target.

>>

>> Signed-off-by: Naresh Kamboju <naresh.kamboju@linaro.org>

>> ---

>>  tools/testing/selftests/intel_pstate/run.sh | 15 ++++++++++-----

>>  1 file changed, 10 insertions(+), 5 deletions(-)

>>

>> diff --git a/tools/testing/selftests/intel_pstate/run.sh b/tools/testing/selftests/intel_pstate/run.sh

>> index 7868c106b8b1..2149b9b5876a 100755

>> --- a/tools/testing/selftests/intel_pstate/run.sh

>> +++ b/tools/testing/selftests/intel_pstate/run.sh

>> @@ -31,11 +31,16 @@ EVALUATE_ONLY=0

>>  

>>  max_cpus=$(($(nproc)-1))

>>  

>> -# compile programs

>> -gcc aperf.c -Wall -D_GNU_SOURCE -o aperf  -lm

>> -[ $? -ne 0 ] && echo "Problem compiling aperf.c." && exit 1

>> -gcc -o msr msr.c -lm

>> -[ $? -ne 0 ] && echo "Problem compiling msr.c." && exit 1

>> +# Compile programs if executable not found

>> +if [ ! -x aperf ]; then

>> +	gcc aperf.c -Wall -D_GNU_SOURCE -o aperf  -lm

>> +	[ $? -ne 0 ] && echo "Problem compiling aperf.c." && exit 1

>> +fi

>> +

>> +if [ ! -x msr ]; then

>> +	gcc -o msr msr.c -lm

>> +	[ $? -ne 0 ] && echo "Problem compiling msr.c." && exit 1

>> +fi

> 

> As such run.sh shouldn't have any compile code. These should

> be strictly for running tests.

> 

> Instead of adding checks, please remove the compile logic from this

> file. 

> 


Hi Naresh,

I already have a patch from Thomas Meyer that removes the compile
logic. No need to redo the patch.

thanks,
-- Shuah

Patch

diff --git a/tools/testing/selftests/intel_pstate/run.sh b/tools/testing/selftests/intel_pstate/run.sh
index 7868c106b8b1..2149b9b5876a 100755
--- a/tools/testing/selftests/intel_pstate/run.sh
+++ b/tools/testing/selftests/intel_pstate/run.sh
@@ -31,11 +31,16 @@  EVALUATE_ONLY=0
 
 max_cpus=$(($(nproc)-1))
 
-# compile programs
-gcc aperf.c -Wall -D_GNU_SOURCE -o aperf  -lm
-[ $? -ne 0 ] && echo "Problem compiling aperf.c." && exit 1
-gcc -o msr msr.c -lm
-[ $? -ne 0 ] && echo "Problem compiling msr.c." && exit 1
+# Compile programs if executable not found
+if [ ! -x aperf ]; then
+	gcc aperf.c -Wall -D_GNU_SOURCE -o aperf  -lm
+	[ $? -ne 0 ] && echo "Problem compiling aperf.c." && exit 1
+fi
+
+if [ ! -x msr ]; then
+	gcc -o msr msr.c -lm
+	[ $? -ne 0 ] && echo "Problem compiling msr.c." && exit 1
+fi
 
 function run_test () {