On Mon, Mar 12, 2018 at 06:14:50PM +0530, Sandipan Das wrote:
> This fixes record+probe_libc_inet_pton.sh from always exiting
> with code 0 and making the test pass even if the perf script
> output does not match the expected pattern.
> 
> The issue can be observed if this test is run with the verbose
> flags as shown below:
> 
> 60: probe libc's inet_pton & backtrace it with ping       :
> ...
> ping 19602 [006] 16988.413767: probe_libc:inet_pton: (7fff9a2c42e8)
> 1842e8 __GI___inet_pton (/usr/lib64/libc-2.26.so)
> 130db4 getaddrinfo (/usr/lib64/libc-2.26.so)
> 
> FAIL: expected backtrace entry 3 ".*\(.*/bin/ping.*\)$" got ""
> test child finished with 0
> ...
> probe libc's inet_pton & backtrace it with ping: Ok
> 
> Fixes: e07d585e2454 ("perf tests: Switch trace+probe_libc_inet_pton to use 
> record")
> Signed-off-by: Sandipan Das <sandi...@linux.vnet.ibm.com>
> ---
>  tools/perf/tests/shell/record+probe_libc_inet_pton.sh | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/perf/tests/shell/record+probe_libc_inet_pton.sh 
> b/tools/perf/tests/shell/record+probe_libc_inet_pton.sh
> index 52c3ee701a89..1ecc1f0ff84a 100755
> --- a/tools/perf/tests/shell/record+probe_libc_inet_pton.sh
> +++ b/tools/perf/tests/shell/record+probe_libc_inet_pton.sh
> @@ -47,7 +47,10 @@ trace_libc_inet_pton_backtrace() {
>               [ -z "${expected[$idx]}" ] && break
>       done
>  
> -     rm -f $file
> +     # If any statements are executed from this point onwards,
> +     # the exit code of the last among these will be reflected
> +     # in err below. If the exit code is 0, the test will pass
> +     # even if the perf script output does not match.

right :-\ but we still need to delete that $file.. I assume it will
get delete by the 'rm -f ${file}' in the script main body?

thanks,
jirka

Reply via email to