On Thu, 19 Aug 2021 11:26:07 -0400 Steven Rostedt rostedt@goodmis.org wrote:
From: "Steven Rostedt (VMware)" rostedt@goodmis.org
Add a function to remove all dynamic events from the tracing directory. It requires a loop as some of the dynamic events may depend on others being removed first. Also add a safety that prevents it from looping infinitely due to a bug where an event never gets removed.
Link: https://lkml.kernel.org/r/20210819041842.696873153@goodmis.org
Thank you for adding this useful function!
Acked-by: Masami Hiramatsu mhiramat@kernel.org
Cc: Shuah Khan shuah@kernel.org Cc: Shuah Khan skhan@linuxfoundation.org Cc: linux-kselftest@vger.kernel.org Signed-off-by: Steven Rostedt (VMware) rostedt@goodmis.org
.../testing/selftests/ftrace/test.d/functions | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+)
diff --git a/tools/testing/selftests/ftrace/test.d/functions b/tools/testing/selftests/ftrace/test.d/functions index a6fac927ee82..f68d336b961b 100644 --- a/tools/testing/selftests/ftrace/test.d/functions +++ b/tools/testing/selftests/ftrace/test.d/functions @@ -83,6 +83,27 @@ clear_synthetic_events() { # reset all current synthetic events done } +clear_dynamic_events() { # reset all current dynamic events
- again=1
- stop=1
- # loop mulitple times as some events require other to be removed first
- while [ $again -eq 1 ]; do
- stop=$((stop+1))
- # Prevent infinite loops
- if [ $stop -gt 10 ]; then
break;
- fi
- again=2
- grep -v '^#' dynamic_events|
- while read line; do
del=`echo $line | sed -e 's/^.\([^ ]*\).*/-\1/'`
if ! echo "$del" >> dynamic_events; then
again=1
fi
- done
- done
+}
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, @@ -93,6 +114,7 @@ initialize_ftrace() { # Reset ftrace to initial-state reset_events_filter reset_ftrace_filter disable_events
- clear_dynamic_events [ -f set_event_pid ] && echo > set_event_pid [ -f set_ftrace_pid ] && echo > set_ftrace_pid [ -f set_ftrace_notrace ] && echo > set_ftrace_notrace
-- 2.30.2