From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Zijlstra Subject: Re: [PATCH 1/4 tip/sched/core] sched: rename preempt_notifier to sched_notifier and always enable it Date: Thu, 26 Nov 2009 11:32:45 +0100 Message-ID: <1259231565.4273.31.camel@twins> References: <20091126190018.88a6dd77.sfr@canb.auug.org.au> <20091126081237.GA31034@elte.hu> <4B0E4741.10509@kernel.org> <20091126092631.GA17253@elte.hu> <4B0E4EFB.2070705@kernel.org> <20091126095154.GE32275@elte.hu> <4B0E5458.30303@kernel.org> <20091126102936.GA1196@elte.hu> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8BIT Return-path: Received: from casper.infradead.org ([85.118.1.10]:43482 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1760259AbZKZKdL convert rfc822-to-8bit (ORCPT ); Thu, 26 Nov 2009 05:33:11 -0500 In-Reply-To: <20091126102936.GA1196@elte.hu> Sender: linux-next-owner@vger.kernel.org List-ID: To: Ingo Molnar Cc: Tejun Heo , Stephen Rothwell , linux-next@vger.kernel.org, linux-kernel@vger.kernel.org, Mike Galbraith , Thomas Gleixner , "H. Peter Anvin" On Thu, 2009-11-26 at 11:29 +0100, Ingo Molnar wrote: > * Tejun Heo 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.