All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: linux-kernel@vger.kernel.org
Cc: Ingo Molnar <mingo@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Masami Hiramatsu <mhiramat@kernel.org>
Subject: [for-next][PATCH 03/17] selftests: ftrace: Initialize ftrace before each test
Date: Wed, 23 Nov 2016 10:35:15 -0500	[thread overview]
Message-ID: <20161123153527.634161880@goodmis.org> (raw)
In-Reply-To: 20161123153512.923515549@goodmis.org

[-- Attachment #1: 0003-selftests-ftrace-Initialize-ftrace-before-each-test.patch --]
[-- Type: text/plain, Size: 2530 bytes --]

From: Masami Hiramatsu <mhiramat@kernel.org>

Reset ftrace to initial state before running each test.
This fixes some test cases to enable tracing before starting
trace test. This can avoid false-positive failure when
previous testcase fails while disabling tracing.

Link: http://lkml.kernel.org/r/147928398192.22982.7767460638302113002.stgit@devbox

Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Suggested-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 tools/testing/selftests/ftrace/ftracetest       |  2 +-
 tools/testing/selftests/ftrace/test.d/functions | 28 +++++++++++++++++++++++++
 2 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/ftrace/ftracetest b/tools/testing/selftests/ftrace/ftracetest
index 4c6a0bf8ba79..a03d366a4a2f 100755
--- a/tools/testing/selftests/ftrace/ftracetest
+++ b/tools/testing/selftests/ftrace/ftracetest
@@ -228,7 +228,7 @@ trap 'SIG_RESULT=$XFAIL' $SIG_XFAIL
 
 __run_test() { # testfile
   # setup PID and PPID, $$ is not updated.
-  (cd $TRACING_DIR; read PID _ < /proc/self/stat ; set -e; set -x; . $1)
+  (cd $TRACING_DIR; read PID _ < /proc/self/stat; set -e; set -x; initialize_ftrace; . $1)
   [ $? -ne 0 ] && kill -s $SIG_FAIL $SIG_PID
 }
 
diff --git a/tools/testing/selftests/ftrace/test.d/functions b/tools/testing/selftests/ftrace/test.d/functions
index c37262f6c269..91de1a8e4f19 100644
--- a/tools/testing/selftests/ftrace/test.d/functions
+++ b/tools/testing/selftests/ftrace/test.d/functions
@@ -23,3 +23,31 @@ reset_trigger() { # reset all current setting triggers
     done
 }
 
+reset_events_filter() { # reset all current setting filters
+    grep -v ^none events/*/*/filter |
+    while read line; do
+	echo 0 > `echo $line | cut -f1 -d:`
+    done
+}
+
+disable_events() {
+    echo 0 > events/enable
+}
+
+initialize_ftrace() { # Reset ftrace to initial-state
+# As the initial state, ftrace will be set to nop tracer,
+# no events, no triggers, no filters, no function filters,
+# no probes, and tracing on.
+    disable_tracing
+    reset_tracer
+    reset_trigger
+    reset_events_filter
+    disable_events
+    echo > set_event_pid	# event tracer is always on
+    [ -f set_ftrace_filter ] && echo | tee set_ftrace_*
+    [ -f set_graph_function ] && echo | tee set_graph_*
+    [ -f stack_trace_filter ] && echo > stack_trace_filter
+    [ -f kprobe_events ] && echo > kprobe_events
+    [ -f uprobe_events ] && echo > uprobe_events
+    enable_tracing
+}
-- 
2.10.2

  parent reply	other threads:[~2016-11-23 15:37 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-23 15:35 [for-next][PATCH 00/17] tracing: Updates for 4.10 Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 01/17] recordmcount: arm: Implement make_nop Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 02/17] tracing: Add new trace_marker_raw Steven Rostedt
2016-11-23 15:35 ` Steven Rostedt [this message]
2016-11-23 15:35 ` [for-next][PATCH 04/17] selftests: ftrace: Add --quiet option not to show error logs on screen Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 05/17] selftests: ftrace: Check whether snapshot trigger is supported correctly Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 06/17] selftests: ftrace: Fix trigger-mod to run without syscall trace Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 07/17] selftests: ftrace: Hide ftracetest logs from git Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 08/17] selftests: ftrace: Introduce TMPDIR for temporary files Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 09/17] selftests: ftrace: Add a testcase for function filter glob match Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 10/17] selftests: ftrace: Add a testcase for types of kprobe event Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 11/17] tracing: Add hook to function tracing for other subsystems to use Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 12/17] stm class: ftrace: Add ftrace-export-over-stm driver Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 13/17] coresight: Mark stm_generic_packet() with notrace Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 14/17] intel_th: Mark sth_stm_packet() " Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 15/17] stm dummy: Mark dummy_stm_packet() " Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 16/17] stm: Mark the functions of writing STM " Steven Rostedt
2016-11-23 15:35 ` [for-next][PATCH 17/17] tracing: Add error checks to creation of event files Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20161123153527.634161880@goodmis.org \
    --to=rostedt@goodmis.org \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mhiramat@kernel.org \
    --cc=mingo@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.