perf tests lock_contention: Fix shellcheck issue about quoting to avoid word splitting
authorKajol Jain <kjain@linux.ibm.com>
Sun, 9 Jul 2023 18:27:38 +0000 (23:57 +0530)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 3 Aug 2023 20:01:25 +0000 (17:01 -0300)
Running shellcheck on lock_contention.sh generates below warning:

In tests/shell/lock_contention.sh line 24:
if [ `id -u` != 0 ]; then
             ^-----^ SC2046 (warning): Quote this to prevent word splitting.

In tests/shell/lock_contention.sh line 160:
local type=$(head -1 "${result}" | awk '{ print $8 }' | sed -e 's/:.*//')
        ^--------^ SC3043 (warning): In POSIX sh, 'local' is undefined.
              ^--^ SC2155 (warning): Declare and assign separately to avoid masking return values.
                   ^-- SC2046 (warning): Quote this to prevent word splitting.

Fixed above warnings by:

- Adding quotes to avoid word splitting.
- Fixing shellcheck warnings for local usage, by prefixing
  function name to the variable.

Signed-off-by: Kajol Jain <kjain@linux.ibm.com>
Acked-by: Ian Rogers <irogers@google.com>
Cc: Disha Goel <disgoel@linux.vnet.ibm.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Madhavan Srinivasan <maddy@linux.ibm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: linuxppc-dev@lists.ozlabs.org
Link: https://lore.kernel.org/r/20230709182800.53002-5-atrajeev@linux.vnet.ibm.com
Signed-off-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/tests/shell/lock_contention.sh

index 4a19442..d120e83 100755 (executable)
@@ -21,7 +21,7 @@ trap_cleanup() {
 trap trap_cleanup EXIT TERM INT
 
 check() {
-       if [ `id -u` != 0 ]; then
+       if [ "$(id -u)" != 0 ]; then
                echo "[Skip] No root permission"
                err=2
                exit
@@ -157,10 +157,10 @@ test_lock_filter()
        perf lock contention -i ${perfdata} -L tasklist_lock -q 2> ${result}
 
        # find out the type of tasklist_lock
-       local type=$(head -1 "${result}" | awk '{ print $8 }' | sed -e 's/:.*//')
+       test_lock_filter_type=$(head -1 "${result}" | awk '{ print $8 }' | sed -e 's/:.*//')
 
-       if [ "$(grep -c -v "${type}" "${result}")" != "0" ]; then
-               echo "[Fail] Recorded result should not have non-${type} locks:" "$(cat "${result}")"
+       if [ "$(grep -c -v "${test_lock_filter_type}" "${result}")" != "0" ]; then
+               echo "[Fail] Recorded result should not have non-${test_lock_filter_type} locks:" "$(cat "${result}")"
                err=1
                exit
        fi
@@ -170,8 +170,8 @@ test_lock_filter()
        fi
 
        perf lock con -a -b -L tasklist_lock -q -- perf bench sched messaging > /dev/null 2> ${result}
-       if [ "$(grep -c -v "${type}" "${result}")" != "0" ]; then
-               echo "[Fail] BPF result should not have non-${type} locks:" "$(cat "${result}")"
+       if [ "$(grep -c -v "${test_lock_filter_type}" "${result}")" != "0" ]; then
+               echo "[Fail] BPF result should not have non-${test_lock_filter_type} locks:" "$(cat "${result}")"
                err=1
                exit
        fi