Re: [PATCH 1/4 tip/sched/core] sched: rename preempt_notifier tosched_notifier and always enable it

From: Peter Zijlstra
Date: Thu Nov 26 2009 - 06:23:54 EST


On Thu, 2009-11-26 at 11:32 +0100, Peter Zijlstra wrote:
> On Thu, 2009-11-26 at 11:29 +0100, Ingo Molnar wrote:
> > * Tejun Heo <tj@xxxxxxxxxx> wrote:
> >
> > > Rename preempt_notifier to sched_notifier, move it from preempt.h to
> > > sched.h, drop sched_ prefixes from ops names and make sched_notifier
> > > always enabled.
> > >
> > > This is to prepare for adding more notification hooks. This patch
> > > doesn't make any functional changes.
> >
> > The sched notifiers and the various event notifiers we have in the same
> > codepaths should really be unified into a single callback framework.
> >
> > We have these _5_ callbacks:
> >
> > ....
> > perf_event_task_sched_out(prev, next, cpu);
> > ....
> > fire_sched_out_notifiers(prev, next);
> > ....
> > trace_sched_switch(rq, prev, next);
> > ....
> > perf_event_task_sched_in(current, cpu_of(rq));
> > fire_sched_in_notifiers(current);
> > ....
> >
> > That could be done with just two callbacks - one for sched-out, one for
> > sched-in.
> >
> > The best way to do that would be to use two TRACE_EVENT() callbacks,
> > make them unconditional and register to them. (with wrappers to make it
> > all convenient to use)
> >
> > This requires some work but needs to be done.
>
> Ugh,.. it also makes TRACE_EVENT unconditional.
>
> That really wants a separate option.. What we could do is take regular
> notifier lists and extend them to auto-generate a tracepoint when the
> trace stuff is enabled or something.

Also, there is this thing about direct and indirect function calls.
--
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/