Re: [for-next][PATCH 4/5] tracing: Check all tasks on each CPU when filtering pids

From: Jiaxing Wang
Date: Fri Oct 30 2015 - 02:16:54 EST


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);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/