Messages in this thread | | | Date | Tue, 19 Dec 2017 16:04:18 +0100 | From | Sebastian Andrzej Siewior <> | Subject | Re: [v4.14-rt][report] arm: run: stress-ng --class os --all 0 -t 5m |
| |
On 2017-12-19 10:02:02 [-0500], Steven Rostedt wrote: > On Tue, 19 Dec 2017 09:27:40 +0100 > Sebastian Andrzej Siewior <bigeasy@linutronix.de> wrote: > > > diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c > > index c2c344fda487..3971fa0c7194 100644 > > --- a/kernel/time/hrtimer.c > > +++ b/kernel/time/hrtimer.c > > @@ -1952,6 +1952,7 @@ int hrtimers_dead_cpu(unsigned int scpu) > > BUG_ON(cpu_online(scpu)); > > tick_cancel_sched_timer(scpu); > > > > + local_bh_disable(); > > local_irq_disable(); > > old_base = &per_cpu(hrtimer_bases, scpu); > > new_base = this_cpu_ptr(&hrtimer_bases); > > @@ -1979,6 +1980,7 @@ int hrtimers_dead_cpu(unsigned int scpu) > > /* Check, if we got expired work to do */ > > __hrtimer_peek_ahead_timers(); > > local_irq_enable(); > > + local_bh_enable(); > > return 0; > > } > > The above just seems wrong. local_irq_disable() should imply > local_bh_disable(), as it doesn't let softirqs run either.
Where does local_irq_disable() imply this?
> -- Steve
Sebastian
| |