Messages in this thread | | | Date | Fri, 30 Oct 2015 16:28:45 -0400 | From | Steven Rostedt <> | Subject | Re: [for-next][PATCH 4/5] tracing: Check all tasks on each CPU when filtering pids |
| |
On Fri, 30 Oct 2015 14:16:43 +0800 Jiaxing Wang <hello.wjx@gmail.com> wrote:
> On Thu, Oct 29, 2015 at 03:07:58AM -0400, Steven Rostedt wrote: > > static ssize_t > > ftrace_event_pid_write(struct file *filp, const char __user *ubuf, > > size_t cnt, loff_t *ppos) > > @@ -1711,6 +1727,12 @@ 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); > > + > > + /* > > + * Ignoring of pids is done at task switch. But we have to > > + * check for those tasks that are currently running. > > + */ > > + on_each_cpu(ignore_task_cpu, tr, 1); > > } > on_each_cpu(ignore_task_cpu, tr, 1); can be put outside of the else > block, then ignore_pid can be updated when appending pid, > eg. echo 'xxx' >> set_event_pid, in case xxx is running on some cpu.
Hmm, I guess I could.
-- Steve
> > > > mutex_unlock(&event_mutex);
| |