From f5a14d0f30d5f6e844d8c8d541d7467d3f80efce Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Fri, 26 Mar 2021 10:29:34 +0100 Subject: [PATCH] fix(memstrack): shellcheck for modules.d/99memstrack --- modules.d/99memstrack/.shchkdir | 0 modules.d/99memstrack/memstrack-report.sh | 10 ++-------- modules.d/99memstrack/memstrack-start.sh | 2 +- modules.d/99memstrack/module-setup.sh | 14 +++++++------- 4 files changed, 10 insertions(+), 16 deletions(-) create mode 100644 modules.d/99memstrack/.shchkdir diff --git a/modules.d/99memstrack/.shchkdir b/modules.d/99memstrack/.shchkdir new file mode 100644 index 000000000..e69de29bb diff --git a/modules.d/99memstrack/memstrack-report.sh b/modules.d/99memstrack/memstrack-report.sh index 7679b7d0b..69c9638ef 100755 --- a/modules.d/99memstrack/memstrack-report.sh +++ b/modules.d/99memstrack/memstrack-report.sh @@ -8,14 +8,8 @@ fi if type -P systemctl > /dev/null; then systemctl stop memstrack.service else - get_pid_of_tracer() { - local _user _pid _rest - read _user _pid _rest <<< $(ps aux | grep [m]emstrack | head -1) - echo $_pid - } - - kill -s INT $(get_pid_of_tracer) - while [[ -n $(get_pid_of_tracer) ]]; do + pkill --signal INT '[m]emstrack' + while [[ $(pgrep '[m]emstrack') ]]; do sleep 1 done fi diff --git a/modules.d/99memstrack/memstrack-start.sh b/modules.d/99memstrack/memstrack-start.sh index aedee54e8..82a9f22be 100755 --- a/modules.d/99memstrack/memstrack-start.sh +++ b/modules.d/99memstrack/memstrack-start.sh @@ -25,7 +25,7 @@ prepare_debugfs() { trace_base=$(get_trace_base) # old debugfs interface case. if ! [ -d "$trace_base/tracing" ]; then - mount none -t debugfs $trace_base + mount none -t debugfs "$trace_base" # new tracefs interface case. elif ! [ -f "$trace_base/tracing/trace" ]; then mount none -t tracefs "$trace_base/tracing" diff --git a/modules.d/99memstrack/module-setup.sh b/modules.d/99memstrack/module-setup.sh index 8a038718b..91309bb5e 100755 --- a/modules.d/99memstrack/module-setup.sh +++ b/modules.d/99memstrack/module-setup.sh @@ -1,15 +1,13 @@ #!/bin/bash check() { - if find_binary memstrack > /dev/null; then - dinfo "memstrack is available" - return 0 + if ! require_binaries pgrep pkill memstrack; then + dinfo "memstrack is not available" + dinfo "If you need to use rd.memdebug>=4, please install memstrack and procps-ng" + return 1 fi - dinfo "memstrack is not available" - dinfo "If you need to use rd.memdebug>=4, please install memstrack" - - return 1 + return 0 } depends() { @@ -17,11 +15,13 @@ depends() { } install() { + inst_multiple pgrep pkill inst "/bin/memstrack" "/bin/memstrack" inst "$moddir/memstrack-start.sh" "/bin/memstrack-start" inst_hook cleanup 99 "$moddir/memstrack-report.sh" inst "$moddir/memstrack.service" "$systemdsystemunitdir/memstrack.service" + $SYSTEMCTL -q --root "$initdir" add-wants initrd.target memstrack.service } -- 2.47.2