tracing: Add sched_wakeup_new and sched_waking tracepoints for pid filter
The set_event_pid filter relies on attaching to the sched_switch and sched_wakeup tracepoints to see if it should filter the tracing on schedule tracepoints. By adding the callbacks to sched_wakeup, pids in the set_event_pid file will trace the wakeups of those tasks with those pids. But sched_wakeup_new and sched_waking were missed. These two should also be traced. Luckily, these tracepoints share the same class as sched_wakeup which means they can use the same pre and post callbacks as sched_wakeup does. Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
This commit is contained in:
parent
bd1b7cd360
commit
0f72e37e42
1 changed files with 16 additions and 0 deletions
|
@ -582,6 +582,12 @@ static void __ftrace_clear_event_pids(struct trace_array *tr)
|
|||
unregister_trace_sched_wakeup(event_filter_pid_sched_wakeup_probe_pre, tr);
|
||||
unregister_trace_sched_wakeup(event_filter_pid_sched_wakeup_probe_post, tr);
|
||||
|
||||
unregister_trace_sched_wakeup_new(event_filter_pid_sched_wakeup_probe_pre, tr);
|
||||
unregister_trace_sched_wakeup_new(event_filter_pid_sched_wakeup_probe_post, tr);
|
||||
|
||||
unregister_trace_sched_waking(event_filter_pid_sched_wakeup_probe_pre, tr);
|
||||
unregister_trace_sched_waking(event_filter_pid_sched_wakeup_probe_post, tr);
|
||||
|
||||
list_for_each_entry(file, &tr->events, list) {
|
||||
clear_bit(EVENT_FILE_FL_PID_FILTER_BIT, &file->flags);
|
||||
}
|
||||
|
@ -1729,6 +1735,16 @@ ftrace_event_pid_write(struct file *filp, const char __user *ubuf,
|
|||
tr, INT_MAX);
|
||||
register_trace_prio_sched_wakeup(event_filter_pid_sched_wakeup_probe_post,
|
||||
tr, 0);
|
||||
|
||||
register_trace_prio_sched_wakeup_new(event_filter_pid_sched_wakeup_probe_pre,
|
||||
tr, INT_MAX);
|
||||
register_trace_prio_sched_wakeup_new(event_filter_pid_sched_wakeup_probe_post,
|
||||
tr, 0);
|
||||
|
||||
register_trace_prio_sched_waking(event_filter_pid_sched_wakeup_probe_pre,
|
||||
tr, INT_MAX);
|
||||
register_trace_prio_sched_waking(event_filter_pid_sched_wakeup_probe_post,
|
||||
tr, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in a new issue