Commit 078cbb6f authored by Ian Rogers's avatar Ian Rogers Committed by Arnaldo Carvalho de Melo
Browse files

perf test: Cleanup daemon if test is interrupted.



Reorder daemon_start and daemon_exit as the trap handler is added in
daemon_start referencing daemon_exit.

Signed-off-by: default avatarIan Rogers <irogers@google.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lore.kernel.org/lkml/20210317005505.2794804-2-irogers@google.com


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 87cb88d3
Loading
Loading
Loading
Loading
+20 −14
Original line number Diff line number Diff line
@@ -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

	# 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 "echo 'FAILED: Signal caught'; daemon_exit ${config}; exit 1" SIGINT SIGTERM

	# 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"