diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2009-07-03 08:44:31 -0500 |
---|---|---|
committer | Clark Williams <williams@redhat.com> | 2012-04-10 16:40:30 -0500 |
commit | 2675b8ef59a8aaaeb21311d84a35b1603f4ad6d6 (patch) | |
tree | 994810c1ba030a7bcf94af16b1cf5a2521a9240e /kernel/sched | |
parent | 0775fc895daa6678ed04e714f0178d66af6630c0 (diff) |
hrtimer: fixup hrtimer callback changes for preempt-rt
In preempt-rt we can not call the callbacks which take sleeping locks
from the timer interrupt context.
Bring back the softirq split for now, until we fixed the signal
delivery problem for real.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/sched')
-rw-r--r-- | kernel/sched/core.c | 1 | ||||
-rw-r--r-- | kernel/sched/rt.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index df06ea68e2b8..65c44bf92679 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -480,6 +480,7 @@ static void init_rq_hrtick(struct rq *rq) hrtimer_init(&rq->hrtick_timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); rq->hrtick_timer.function = hrtick; + rq->hrtick_timer.irqsafe = 1; } #else /* CONFIG_SCHED_HRTICK */ static inline void hrtick_clear(struct rq *rq) diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index 44af55e6d5d0..8bb9f00f8b49 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -41,6 +41,7 @@ void init_rt_bandwidth(struct rt_bandwidth *rt_b, u64 period, u64 runtime) hrtimer_init(&rt_b->rt_period_timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); + rt_b->rt_period_timer.irqsafe = 1; rt_b->rt_period_timer.function = sched_rt_period_timer; } |