Messages in this thread | | | Date | Fri, 30 Oct 2015 14:16:43 +0800 | From | Jiaxing Wang <> | Subject | Re: [for-next][PATCH 4/5] tracing: Check all tasks on each CPU when filtering pids |
| |
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. > > mutex_unlock(&event_mutex);
| |