Peter Zijlstra 7f1e2ca9f0 hrtimer: fix rq->lock inversion (again)
It appears I inadvertly introduced rq->lock recursion to the
hrtimer_start() path when I delegated running already expired
timers to softirq context.

This patch fixes it by introducing a __hrtimer_start_range_ns()
method that will not use raise_softirq_irqoff() but
__raise_softirq_irqoff() which avoids the wakeup.

It then also changes schedule() to check for pending softirqs and
do the wakeup then, I'm not quite sure I like this last bit, nor
am I convinced its really needed.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: paulus@samba.org
LKML-Reference: <20090313112301.096138802@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-03-31 14:52:52 +02:00
..
2008-10-16 11:21:30 -07:00
2009-02-13 09:44:22 +01:00
2009-03-30 21:46:55 +02:00
2009-02-21 14:17:17 -08:00
2009-01-14 18:09:02 +01:00
2009-01-08 08:31:02 -08:00
2009-02-10 00:41:54 +01:00
2009-01-08 08:31:12 -08:00
2009-03-30 22:05:16 +10:30
2009-02-18 19:26:33 +01:00
2009-02-26 21:56:07 +01:00
2009-01-06 11:07:15 +01:00
2009-03-23 09:22:31 -07:00
2009-03-24 10:52:46 +11:00
2008-10-16 11:21:47 -07:00