Anna-Maria Gleixner
f4a9db57e7
nohz: Fix local_timer_softirq_pending()
...
commit 80d20d35af1edd632a5e7a3b9c0ab7ceff92769e upstream.
local_timer_softirq_pending() checks whether the timer softirq is
pending with: local_softirq_pending() & TIMER_SOFTIRQ.
This is wrong because TIMER_SOFTIRQ is the softirq number and not a
bitmask. So the test checks for the wrong bit.
Use BIT(TIMER_SOFTIRQ) instead.
Fixes: 5d62c183f9e9 ("nohz: Prevent a timer interrupt storm in tick_nohz_stop_sched_tick()")
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Daniel Bristot de Oliveira <bristot@redhat.com>
Acked-by: Frederic Weisbecker <frederic@kernel.org>
Cc: bigeasy@linutronix.de
Cc: peterz@infradead.org
Cc: stable@vger.kernel.org
Link: https://lkml.kernel.org/r/20180731161358.29472-1-anna-maria@linutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-08-09 12:17:57 +02:00
..
alarmtimer.c
alarmtimer: don't rate limit one-shot timers
2017-07-27 15:08:08 -07:00
clockevents.c
clockevents: Make clockevents_subsys static
2016-07-19 10:48:06 +02:00
clocksource.c
clocksource: Defer override invalidation unless clock is unstable
2016-08-31 14:43:33 -07:00
hrtimer.c
hrtimer: Ensure POSIX compliance (relative CLOCK_REALTIME hrtimers)
2018-03-03 10:23:20 +01:00
itimer.c
itimers: Handle relative timers with CONFIG_TIME_LOW_RES proper
2016-01-17 11:13:55 +01:00
jiffies.c
jiffies: Use CLOCKSOURCE_MASK instead of constant
2016-02-27 08:55:31 +01:00
Kconfig
rcu: Drop RCU_USER_QS in favor of NO_HZ_FULL
2015-07-06 13:52:18 -07:00
Makefile
time: Remove development rules from Kbuild/Makefile
2015-07-01 09:57:35 +02:00
ntp.c
ntp: Fix ADJ_SETOFFSET being used w/ ADJ_NANO
2016-01-22 12:01:42 +01:00
ntp_internal.h
ntp: Fix second_overflow's input parameter type to be 64bits
2015-12-16 16:50:56 -08:00
posix-clock.c
time: Change posix clocks ops interfaces to use timespec64
2018-03-24 11:00:09 +01:00
posix-cpu-timers.c
posix_cpu_timer: Exit early when process has been reaped
2016-07-11 17:20:12 +02:00
posix-timers.c
posix-timer: Properly check sigevent->sigev_notify
2018-02-17 13:21:13 +01:00
sched_clock.c
timers, sched_clock: Update timeout for clock wrap
2018-03-22 09:17:42 +01:00
test_udelay.c
time: Avoid timespec in udelay_test
2016-06-20 12:47:26 -07:00
tick-broadcast-hrtimer.c
tick/broadcast-hrtimer: Set name of the ce_broadcast_hrtimer
2016-07-05 17:02:19 +02:00
tick-broadcast.c
tick/broadcast: Use for_each_cpu() specially on UP kernels
2018-05-22 16:57:58 +02:00
tick-common.c
clockevents: Remove unused set_mode() callback
2015-09-14 11:00:55 +02:00
tick-internal.h
timers: Forward the wheel clock whenever possible
2016-07-07 10:35:11 +02:00
tick-oneshot.c
clockevents: Provide functions to set and get the state
2015-06-02 14:40:47 +02:00
tick-sched.c
nohz: Fix local_timer_softirq_pending()
2018-08-09 12:17:57 +02:00
tick-sched.h
timers/nohz: Convert tick dependency mask to atomic_t
2016-03-29 11:52:11 +02:00
time.c
time: Make sure jiffies_to_msecs() preserves non-zero time periods
2018-07-03 11:23:11 +02:00
timeconst.bc
timeconst: Update path in comment
2015-10-26 10:06:06 +09:00
timeconv.c
time: Add time64_to_tm()
2016-06-20 12:47:15 -07:00
timecounter.c
timecounter: keep track of accumulated fractional nanoseconds
2014-12-30 18:29:27 -05:00
timekeeping.c
time: Fix CLOCK_MONOTONIC_RAW sub-nanosecond accounting
2017-06-29 13:00:30 +02:00
timekeeping.h
hrtimer: Make offset update smarter
2015-04-22 17:06:49 +02:00
timekeeping_debug.c
timekeeping: Use deferred printk() in debug code
2017-02-23 17:44:36 +01:00
timekeeping_internal.h
clocksource: Make clocksource validation work for all clocksources
2015-12-19 15:59:57 +01:00
timer.c
timers: Forward timer base before migrating timers
2018-03-11 16:21:28 +01:00
timer_list.c
sysrq: Reset the watchdog timers while displaying high-resolution timers
2018-03-22 09:17:42 +01:00
timer_stats.c
timer: Avoid using timespec
2016-06-20 12:47:33 -07:00