perf test shell: Replace '|&' with '2>&1 |' to work with more shells
authorKim Phillips <kim.phillips@arm.com>
Wed, 16 Aug 2017 19:20:40 +0000 (16:20 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 16 Aug 2017 19:23:26 +0000 (16:23 -0300)
Since we do not specify bash (and/or zsh) as a requirement, use the
standard error redirection that is more widely supported.

Signed-off-by: Kim Phillips <kim.phillips@arm.com>
Link: http://lkml.kernel.org/n/tip-ji5mhn3iilgch3eaay6csr6z@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/tests/shell/lib/probe.sh
tools/perf/tests/shell/lib/probe_vfs_getname.sh
tools/perf/tests/shell/trace+probe_libc_inet_pton.sh

index 61da3b2..6293cc6 100644 (file)
@@ -1,6 +1,6 @@
 # Arnaldo Carvalho de Melo <acme@kernel.org>, 2017
 
 skip_if_no_perf_probe() {
-       perf probe |& grep -q 'is not a perf-command' && return 2
+       perf probe 2>&1 | grep -q 'is not a perf-command' && return 2
        return 0
 }
index f832395..30a950c 100644 (file)
@@ -1,6 +1,6 @@
 # Arnaldo Carvalho de Melo <acme@kernel.org>, 2017
 
-perf probe -l |& grep -q probe:vfs_getname
+perf probe -l 2>&1 | grep -q probe:vfs_getname
 had_vfs_getname=$?
 
 cleanup_probe_vfs_getname() {
@@ -12,7 +12,7 @@ cleanup_probe_vfs_getname() {
 add_probe_vfs_getname() {
        local verbose=$1
        if [ $had_vfs_getname -eq 1 ] ; then
-               line=$(perf probe -L getname_flags |& egrep 'result.*=.*filename;' | sed -r 's/[[:space:]]+([[:digit:]]+)[[:space:]]+result->uptr.*/\1/')
+               line=$(perf probe -L getname_flags 2>&1 | egrep 'result.*=.*filename;' | sed -r 's/[[:space:]]+([[:digit:]]+)[[:space:]]+result->uptr.*/\1/')
                perf probe $verbose "vfs_getname=getname_flags:${line} pathname=result->name:string"
        fi
 }
index 99dafad..462fc75 100755 (executable)
@@ -22,7 +22,7 @@ trace_libc_inet_pton_backtrace() {
        expected[7]="getaddrinfo[[:space:]]\(/usr/lib.*/libc-[0-9]+\.[0-9]+\.so\)$"
        expected[8]=".*\(.*/bin/ping.*\)$"
 
-       perf trace --no-syscalls -e probe_libc:inet_pton/max-stack=3/ ping -6 -c 1 ::1 |& grep -v ^$ | while read line ; do
+       perf trace --no-syscalls -e probe_libc:inet_pton/max-stack=3/ ping -6 -c 1 ::1 2>&1 | grep -v ^$ | while read line ; do
                echo $line
                echo "$line" | egrep -q "${expected[$idx]}"
                if [ $? -ne 0 ] ; then