[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1321537668.27735.38.camel@twins>
Date: Thu, 17 Nov 2011 14:47:48 +0100
From: Peter Zijlstra <a.p.zijlstra@...llo.nl>
To: Avi Kivity <avi@...hat.com>
Cc: Gleb Natapov <gleb@...hat.com>, linux-kernel@...r.kernel.org,
mingo@...e.hu, Jason Baron <jbaron@...hat.com>,
rostedt <rostedt@...dmis.org>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [PATCH RFC] remove jump_label optimization for perf sched events
On Thu, 2011-11-17 at 15:24 +0200, Avi Kivity wrote:
> On 11/17/2011 03:10 PM, Peter Zijlstra wrote:
> > On Thu, 2011-11-17 at 15:00 +0200, Gleb Natapov wrote:
> >
> > > > That said, I'd much rather throttle this particular jump label than
> > > > remove it altogether, some people really don't like all this scheduler
> > > > hot path crap.
> > > What about moving perf_event_task_sched() to sched_(in|out)_preempt_notifiers?
> > > preempt notifiers checking is already on the scheduler hot path, so no
> > > additional overhead for perf case.
> >
> > Same problem really, some people complain about the overhead of preempt
> > notifiers, also not all kernels have those in.
>
> We could combine the two, sort-circuit preempt notifiers with jump
> labels if empty && not much activity on them.
Jump-labels are still more efficient, also I don't much like preempt
notifiers.
> > Futhermore I loathe notifier lists because they obscure wtf is done.
>
> That's life in a general purpose kernel, if everyone gets their hook in
> to keep their code clean, the scheduler will bloat.
Uhm, no. The bloat isn't different, the only difference is you can
actually see it. So I very much prefer direct hooks.
> An advantage of preempt notifiers is that you can make the perf code
> modular.
Yeah, and you know I loathe modules even more.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists