mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-15 15:04:27 +08:00
42145d71dd
This allows us to trace single thread instead of the whole process. Signed-off-by: Changbin Du <changbin.du@gmail.com> Acked-by: Namhyung Kim <namhyung@kernel.org> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Steven Rostedt (VMware) <rostedt@goodmis.org> Link: http://lore.kernel.org/lkml/20200808023141.14227-17-changbin.du@gmail.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
119 lines
3.3 KiB
Plaintext
119 lines
3.3 KiB
Plaintext
perf-ftrace(1)
|
|
==============
|
|
|
|
NAME
|
|
----
|
|
perf-ftrace - simple wrapper for kernel's ftrace functionality
|
|
|
|
|
|
SYNOPSIS
|
|
--------
|
|
[verse]
|
|
'perf ftrace' <command>
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
The 'perf ftrace' command is a simple wrapper of kernel's ftrace
|
|
functionality. It only supports single thread tracing currently and
|
|
just reads trace_pipe in text and then write it to stdout.
|
|
|
|
The following options apply to perf ftrace.
|
|
|
|
OPTIONS
|
|
-------
|
|
|
|
-t::
|
|
--tracer=::
|
|
Tracer to use when neither -G nor -F option is not
|
|
specified: function_graph or function.
|
|
|
|
-v::
|
|
--verbose=::
|
|
Verbosity level.
|
|
|
|
-F::
|
|
--funcs::
|
|
List all available functions to trace.
|
|
|
|
-p::
|
|
--pid=::
|
|
Trace on existing process id (comma separated list).
|
|
|
|
--tid=::
|
|
Trace on existing thread id (comma separated list).
|
|
|
|
-D::
|
|
--delay::
|
|
Time (ms) to wait before starting tracing after program start.
|
|
|
|
-a::
|
|
--all-cpus::
|
|
Force system-wide collection. Scripts run without a <command>
|
|
normally use -a by default, while scripts run with a <command>
|
|
normally don't - this option allows the latter to be run in
|
|
system-wide mode.
|
|
|
|
-C::
|
|
--cpu=::
|
|
Only trace for the list of CPUs provided. Multiple CPUs can
|
|
be provided as a comma separated list with no space like: 0,1.
|
|
Ranges of CPUs are specified with -: 0-2.
|
|
Default is to trace on all online CPUs.
|
|
|
|
-m::
|
|
--buffer-size::
|
|
Set the size of per-cpu tracing buffer, <size> is expected to
|
|
be a number with appended unit character - B/K/M/G.
|
|
|
|
--inherit::
|
|
Trace children processes spawned by our target.
|
|
|
|
-T::
|
|
--trace-funcs=::
|
|
Select function tracer and set function filter on the given
|
|
function (or a glob pattern). Multiple functions can be given
|
|
by using this option more than once. The function argument also
|
|
can be a glob pattern. It will be passed to 'set_ftrace_filter'
|
|
in tracefs.
|
|
|
|
-N::
|
|
--notrace-funcs=::
|
|
Select function tracer and do not trace functions given by the
|
|
argument. Like -T option, this can be used more than once to
|
|
specify multiple functions (or glob patterns). It will be
|
|
passed to 'set_ftrace_notrace' in tracefs.
|
|
|
|
--func-opts::
|
|
List of options allowed to set:
|
|
call-graph - Display kernel stack trace for function tracer.
|
|
irq-info - Display irq context info for function tracer.
|
|
|
|
-G::
|
|
--graph-funcs=::
|
|
Select function_graph tracer and set graph filter on the given
|
|
function (or a glob pattern). This is useful to trace for
|
|
functions executed from the given function. This can be used more
|
|
than once to specify multiple functions. It will be passed to
|
|
'set_graph_function' in tracefs.
|
|
|
|
-g::
|
|
--nograph-funcs=::
|
|
Select function_graph tracer and set graph notrace filter on the
|
|
given function (or a glob pattern). Like -G option, this is useful
|
|
for the function_graph tracer only and disables tracing for function
|
|
executed from the given function. This can be used more than once to
|
|
specify multiple functions. It will be passed to 'set_graph_notrace'
|
|
in tracefs.
|
|
|
|
--graph-opts::
|
|
List of options allowed to set:
|
|
nosleep-time - Measure on-CPU time only for function_graph tracer.
|
|
noirqs - Ignore functions that happen inside interrupt.
|
|
verbose - Show process names, PIDs, timestamps, etc.
|
|
thresh=<n> - Setup trace duration threshold in microseconds.
|
|
depth=<n> - Set max depth for function graph tracer to follow.
|
|
|
|
SEE ALSO
|
|
--------
|
|
linkperf:perf-record[1], linkperf:perf-trace[1]
|