On Fri, Jan 17, 2014 at 04:12:06PM -0500, r...@redhat.com wrote: > From: Rik van Riel <r...@redhat.com> > > Being able to see how the active nodemask changes over time, and why, > can be quite useful. > > Cc: Peter Zijlstra <pet...@infradead.org> > Cc: Mel Gorman <mgor...@suse.de> > Cc: Ingo Molnar <mi...@redhat.com> > Cc: Chegu Vinod <chegu_vi...@hp.com> > Signed-off-by: Rik van Riel <r...@redhat.com> > --- > include/trace/events/sched.h | 34 ++++++++++++++++++++++++++++++++++ > kernel/sched/fair.c | 8 ++++++-- > 2 files changed, 40 insertions(+), 2 deletions(-) > > diff --git a/include/trace/events/sched.h b/include/trace/events/sched.h > index 67e1bbf..91726b6 100644 > --- a/include/trace/events/sched.h > +++ b/include/trace/events/sched.h > @@ -530,6 +530,40 @@ TRACE_EVENT(sched_swap_numa, > __entry->dst_pid, __entry->dst_tgid, __entry->dst_ngid, > __entry->dst_cpu, __entry->dst_nid) > ); > + > +TRACE_EVENT(update_numa_active_nodes_mask,
Please stick to the sched_ naming for these things. Ideally we'd rename the sysctls too :/ > +++ b/kernel/sched/fair.c > @@ -1300,10 +1300,14 @@ static void update_numa_active_node_mask(struct > task_struct *p) > faults = numa_group->faults_from[task_faults_idx(nid, 0)] + > numa_group->faults_from[task_faults_idx(nid, 1)]; > if (!node_isset(nid, numa_group->active_nodes)) { > - if (faults > max_faults * 4 / 10) > + if (faults > max_faults * 4 / 10) { > + > trace_update_numa_active_nodes_mask(current->pid, numa_group->gid, nid, true, > faults, max_faults); While I think the tracepoint hookery is smart enough to avoid evaluating arguments when they're disabled, it might be best to simply pass: current and numa_group and do the dereference in fast_assign(). That said, this is the first and only numa tracepoint, I'm not sure why this qualifies and other metrics do not. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/