[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YEnzAK01qD1+3aOg@krava>
Date: Thu, 11 Mar 2021 11:37:52 +0100
From: Jiri Olsa <jolsa@...hat.com>
To: Ian Rogers <irogers@...gle.com>
Cc: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Namhyung Kim <namhyung@...nel.org>,
linux-kernel@...r.kernel.org, Stephane Eranian <eranian@...gle.com>
Subject: Re: [PATCH 2/3] perf test: Cleanup daemon if test is interrupted.
On Wed, Mar 10, 2021 at 12:41:17PM -0800, Ian Rogers wrote:
> Reorder daemon_start and daemon_exit as the trap handler is added in
> daemon_start referencing daemon_exit.
makes sense, minor comments below
>
> Signed-off-by: Ian Rogers <irogers@...gle.com>
> ---
> tools/perf/tests/shell/daemon.sh | 34 +++++++++++++++++++-------------
> 1 file changed, 20 insertions(+), 14 deletions(-)
>
> diff --git a/tools/perf/tests/shell/daemon.sh b/tools/perf/tests/shell/daemon.sh
> index 66ad56b4e0a5..a02cedc76de6 100755
> --- a/tools/perf/tests/shell/daemon.sh
> +++ b/tools/perf/tests/shell/daemon.sh
> @@ -98,6 +98,23 @@ check_line_other()
> fi
> }
>
> +daemon_exit()
> +{
> + local config=$1
> +
> + local line=`perf daemon --config ${config} -x: | head -1`
> + local pid=`echo "${line}" | awk 'BEGIN { FS = ":" } ; { print $1 }'`
> +
> + # Reset trap handler.
> + trap - SIGINT SIGTERM
please keep the 'tabs' in here
> +
> + # stop daemon
> + perf daemon stop --config ${config}
> +
> + # ... and wait for the pid to go away
> + tail --pid=${pid} -f /dev/null
> +}
> +
> daemon_start()
> {
> local config=$1
> @@ -105,6 +122,9 @@ daemon_start()
>
> perf daemon start --config ${config}
>
> + # Clean up daemon if interrupted.
> + trap "daemon_exit ${config}; exit 4" SIGINT SIGTERM
ditto, plus let's document exit values somewhere in comments,
I think the next patch is adding exit 62, so that one as well
thanks,
jirka
> +
> # wait for the session to ping
> local state="FAIL"
> while [ "${state}" != "OK" ]; do
> @@ -113,20 +133,6 @@ daemon_start()
> done
> }
>
> -daemon_exit()
> -{
> - local config=$1
> -
> - local line=`perf daemon --config ${config} -x: | head -1`
> - local pid=`echo "${line}" | awk 'BEGIN { FS = ":" } ; { print $1 }'`
> -
> - # stop daemon
> - perf daemon stop --config ${config}
> -
> - # ... and wait for the pid to go away
> - tail --pid=${pid} -f /dev/null
> -}
> -
> test_list()
> {
> echo "test daemon list"
> --
> 2.30.1.766.gb4fecdf3b7-goog
>
Powered by blists - more mailing lists