Merge tag 'trace-v4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
Pull tracing updates from Steven Rostedt: "This includes two new updates for the ftrace infrastructure. - With the changing of the code for filtering events by pid, from a list of pids to a bitmask, we can now easily implement following forks. With a new tracing option "event-fork" which, when set, will have tasks with pids in set_event_pid, when they fork, to have their child pids added to set_event_pid and the child will be traced as well. Note, if "event-fork" is set and a task with its pid in set_event_pid exits, its pid will be removed from set_event_pid - The addition of Tom Zanussi's hist triggers. This includes a very thorough documentatino on how to use the hist triggers with events. This introduces a quick and easy way to get histogram data from events and their fields. Some other cleanups and updates were added as well. Like Masami Hiramatsu added test cases for the event trigger and hist triggers. Also I added a speed up of filtering by using a temp buffer when filters are set" * tag 'trace-v4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (45 commits) tracing: Use temp buffer when filtering events tracing: Remove TRACE_EVENT_FL_USE_CALL_FILTER logic tracing: Remove unused function trace_current_buffer_lock_reserve() tracing: Remove one use of trace_current_buffer_lock_reserve() tracing: Have trace_buffer_unlock_commit() call the _regs version with NULL tracing: Remove unused function trace_current_buffer_discard_commit() tracing: Move trace_buffer_unlock_commit{_regs}() to local header tracing: Fold filter_check_discard() into its only user tracing: Make filter_check_discard() local tracing: Move event_trigger_unlock_commit{_regs}() to local header tracing: Don't use the address of the buffer array name in copy_from_user tracing: Handle tracing_map_alloc_elts() error path correctly tracing: Add check for NULL event field when creating hist field tracing: checking for NULL instead of IS_ERR() tracing: Do not inherit event-fork option for instances tracing: Fix unsigned comparison to zero in hist trigger code kselftests/ftrace: Add a test for log2 modifier of hist trigger tracing: Add hist trigger 'log2' modifier kselftests/ftrace: Add hist trigger testcases kselftests/ftrace : Add event trigger testcases ...
这个提交包含在:
文件差异内容过多而无法显示
加载差异
@@ -210,6 +210,11 @@ of ftrace. Here is a list of some of the key files:
|
||||
Note, sched_switch and sched_wake_up will also trace events
|
||||
listed in this file.
|
||||
|
||||
To have the PIDs of children of tasks with their PID in this file
|
||||
added on fork, enable the "event-fork" option. That option will also
|
||||
cause the PIDs of tasks to be removed from this file when the task
|
||||
exits.
|
||||
|
||||
set_graph_function:
|
||||
|
||||
Set a "trigger" function where tracing should start
|
||||
@@ -725,16 +730,14 @@ noraw
|
||||
nohex
|
||||
nobin
|
||||
noblock
|
||||
nostacktrace
|
||||
trace_printk
|
||||
noftrace_preempt
|
||||
nobranch
|
||||
annotate
|
||||
nouserstacktrace
|
||||
nosym-userobj
|
||||
noprintk-msg-only
|
||||
context-info
|
||||
latency-format
|
||||
nolatency-format
|
||||
sleep-time
|
||||
graph-time
|
||||
record-cmd
|
||||
@@ -742,7 +745,10 @@ overwrite
|
||||
nodisable_on_free
|
||||
irq-info
|
||||
markers
|
||||
noevent-fork
|
||||
function-trace
|
||||
nodisplay-graph
|
||||
nostacktrace
|
||||
|
||||
To disable one of the options, echo in the option prepended with
|
||||
"no".
|
||||
@@ -796,11 +802,6 @@ Here are the available options:
|
||||
|
||||
block - When set, reading trace_pipe will not block when polled.
|
||||
|
||||
stacktrace - This is one of the options that changes the trace
|
||||
itself. When a trace is recorded, so is the stack
|
||||
of functions. This allows for back traces of
|
||||
trace sites.
|
||||
|
||||
trace_printk - Can disable trace_printk() from writing into the buffer.
|
||||
|
||||
branch - Enable branch tracing with the tracer.
|
||||
@@ -897,6 +898,10 @@ x494] <- /root/a.out[+0x4a8] <- /lib/libc-2.7.so[+0x1e1a6]
|
||||
When disabled, the trace_marker will error with EINVAL
|
||||
on write.
|
||||
|
||||
event-fork - When set, tasks with PIDs listed in set_event_pid will have
|
||||
the PIDs of their children added to set_event_pid when those
|
||||
tasks fork. Also, when tasks with PIDs in set_event_pid exit,
|
||||
their PIDs will be removed from the file.
|
||||
|
||||
function-trace - The latency tracers will enable function tracing
|
||||
if this option is enabled (default it is). When
|
||||
@@ -904,8 +909,17 @@ x494] <- /root/a.out[+0x4a8] <- /lib/libc-2.7.so[+0x1e1a6]
|
||||
functions. This keeps the overhead of the tracer down
|
||||
when performing latency tests.
|
||||
|
||||
Note: Some tracers have their own options. They only appear
|
||||
when the tracer is active.
|
||||
display-graph - When set, the latency tracers (irqsoff, wakeup, etc) will
|
||||
use function graph tracing instead of function tracing.
|
||||
|
||||
stacktrace - This is one of the options that changes the trace
|
||||
itself. When a trace is recorded, so is the stack
|
||||
of functions. This allows for back traces of
|
||||
trace sites.
|
||||
|
||||
Note: Some tracers have their own options. They only appear in this
|
||||
file when the tracer is active. They always appear in the
|
||||
options directory.
|
||||
|
||||
|
||||
|
||||
|
在新工单中引用
屏蔽一个用户