[PATCH v1] perf tests diff: Fixes to variable expansion and stdout

Ian Rogers posted 1 patch 9 months, 1 week ago
tools/perf/tests/shell/diff.sh | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
[PATCH v1] perf tests diff: Fixes to variable expansion and stdout
Posted by Ian Rogers 9 months, 1 week ago
When make_data fails its error message needs to go to stderr rather
than stdout and the stdout value is captured in a variable.  Quote the
$err value so that it is always a valid input for test.  This error is
commonly encountered if no sample data is gathered by the test.

Signed-off-by: Ian Rogers <irogers@google.com>
---
 tools/perf/tests/shell/diff.sh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/tools/perf/tests/shell/diff.sh b/tools/perf/tests/shell/diff.sh
index 14b87af88703..e05a5dc49479 100755
--- a/tools/perf/tests/shell/diff.sh
+++ b/tools/perf/tests/shell/diff.sh
@@ -39,13 +39,13 @@ make_data() {
   file="$1"
   if ! perf record -o "${file}" ${testprog} 2> /dev/null
   then
-    echo "Workload record [Failed record]"
+    echo "Workload record [Failed record]" >&2
     echo 1
     return
   fi
   if ! perf report -i "${file}" -q | grep -q "${testsym}"
   then
-    echo "Workload record [Failed missing output]"
+    echo "Workload record [Failed missing output]" >&2
     echo 1
     return
   fi
@@ -55,12 +55,12 @@ make_data() {
 test_two_files() {
   echo "Basic two file diff test"
   err=$(make_data "${perfdata1}")
-  if [ $err != 0 ]
+  if [ "$err" != 0 ]
   then
     return
   fi
   err=$(make_data "${perfdata2}")
-  if [ $err != 0 ]
+  if [ "$err" != 0 ]
   then
     return
   fi
@@ -77,12 +77,12 @@ test_two_files() {
 test_three_files() {
   echo "Basic three file diff test"
   err=$(make_data "${perfdata1}")
-  if [ $err != 0 ]
+  if [ "$err" != 0 ]
   then
     return
   fi
   err=$(make_data "${perfdata2}")
-  if [ $err != 0 ]
+  if [ "$err" != 0 ]
   then
     return
   fi
-- 
2.49.0.rc0.332.g42c0ae87b1-goog
Re: [PATCH v1] perf tests diff: Fixes to variable expansion and stdout
Posted by Namhyung Kim 9 months ago
On Tue, 11 Mar 2025 17:18:41 -0700, Ian Rogers wrote:
> When make_data fails its error message needs to go to stderr rather
> than stdout and the stdout value is captured in a variable.  Quote the
> $err value so that it is always a valid input for test.  This error is
> commonly encountered if no sample data is gathered by the test.
> 
> 
Applied to perf-tools-next, thanks!

Best regards,
Namhyung