2017-09-14 10:51:21

by Naresh Kamboju

[permalink] [raw]
Subject: [PATCH] selftests: intel_pstate: compile programs if executable not found

From: Naresh Kamboju <[email protected]>

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 <[email protected]>
---
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

function run_test () {

--
2.13.0


2017-09-14 14:43:05

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH] selftests: intel_pstate: compile programs if executable not found

Hi Naresh,

On 09/14/2017 04:51 AM, [email protected] wrote:
> From: Naresh Kamboju <[email protected]>
>
> 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 <[email protected]>
> ---
> 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

2017-09-14 14:47:09

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH] selftests: intel_pstate: compile programs if executable not found

On 09/14/2017 08:42 AM, Shuah Khan wrote:
> Hi Naresh,
>
> On 09/14/2017 04:51 AM, [email protected] wrote:
>> From: Naresh Kamboju <[email protected]>
>>
>> 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 <[email protected]>
>> ---
>> 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