mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-08-22 00:42:01 +02:00
selftests/ftrace: Add function_graph tracer to func-filter-pid test
The function tracer is tested to see if pid filtering works. Add a test to test function_graph tracer as well, but only if the function_graph tracer is enabled for the top level or instance. Link: https://lore.kernel.org/linux-trace-kernel/20240603190825.083048115@goodmis.org Cc: Masami Hiramatsu <mhiramat@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Alexei Starovoitov <alexei.starovoitov@gmail.com> Cc: Florent Revest <revest@chromium.org> Cc: Martin KaFai Lau <martin.lau@linux.dev> Cc: bpf <bpf@vger.kernel.org> Cc: Sven Schnelle <svens@linux.ibm.com> Cc: Alexei Starovoitov <ast@kernel.org> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Arnaldo Carvalho de Melo <acme@kernel.org> Cc: Daniel Borkmann <daniel@iogearbox.net> Cc: Alan Maguire <alan.maguire@oracle.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Guo Ren <guoren@kernel.org> Reviewed-by: Masami Hiramatsu (Google) <mhiramat@kernel.org> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
This commit is contained in:
parent
fe835e3ca4
commit
35b944a997
|
@ -14,6 +14,11 @@ if [ ! -f options/function-fork ]; then
|
|||
echo "no option for function-fork found. Option will not be tested."
|
||||
fi
|
||||
|
||||
if [ ! -f options/funcgraph-proc ]; then
|
||||
do_funcgraph_proc=0
|
||||
echo "no option for function-fork found. Option will not be tested."
|
||||
fi
|
||||
|
||||
read PID _ < /proc/self/stat
|
||||
|
||||
if [ $do_function_fork -eq 1 ]; then
|
||||
|
@ -21,12 +26,18 @@ if [ $do_function_fork -eq 1 ]; then
|
|||
orig_value=`grep function-fork trace_options`
|
||||
fi
|
||||
|
||||
if [ $do_funcgraph_proc -eq 1 ]; then
|
||||
orig_value2=`cat options/funcgraph-proc`
|
||||
fi
|
||||
|
||||
do_reset() {
|
||||
if [ $do_function_fork -eq 0 ]; then
|
||||
return
|
||||
if [ $do_function_fork -eq 1 ]; then
|
||||
echo $orig_value > trace_options
|
||||
fi
|
||||
|
||||
echo $orig_value > trace_options
|
||||
if [ $do_funcgraph_proc -eq 1 ]; then
|
||||
echo $orig_value2 > options/funcgraph-proc
|
||||
fi
|
||||
}
|
||||
|
||||
fail() { # msg
|
||||
|
@ -36,13 +47,15 @@ fail() { # msg
|
|||
}
|
||||
|
||||
do_test() {
|
||||
TRACER=$1
|
||||
|
||||
disable_tracing
|
||||
|
||||
echo do_execve* > set_ftrace_filter
|
||||
echo $FUNCTION_FORK >> set_ftrace_filter
|
||||
|
||||
echo $PID > set_ftrace_pid
|
||||
echo function > current_tracer
|
||||
echo $TRACER > current_tracer
|
||||
|
||||
if [ $do_function_fork -eq 1 ]; then
|
||||
# don't allow children to be traced
|
||||
|
@ -82,7 +95,11 @@ do_test() {
|
|||
fi
|
||||
}
|
||||
|
||||
do_test
|
||||
do_test function
|
||||
if grep -s function_graph available_tracers; then
|
||||
do_test function_graph
|
||||
fi
|
||||
|
||||
do_reset
|
||||
|
||||
exit 0
|
||||
|
|
Loading…
Reference in New Issue
Block a user