Commit c4d029f2 authored by Thomas Gleixner's avatar Thomas Gleixner

tick/broadcast: Prevent NULL pointer dereference

Dan reported that the recent changes to the broadcast code introduced
a potential NULL dereference.

Add the proper check.

Fixes: e0454311 "tick/broadcast: Sanity check the shutdown of the local clock_event"
Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent 1f6823fa
...@@ -409,6 +409,7 @@ void tick_broadcast_control(enum tick_broadcast_mode mode) ...@@ -409,6 +409,7 @@ void tick_broadcast_control(enum tick_broadcast_mode mode)
break; break;
} }
if (bc) {
if (cpumask_empty(tick_broadcast_mask)) { if (cpumask_empty(tick_broadcast_mask)) {
if (!bc_stopped) if (!bc_stopped)
clockevents_shutdown(bc); clockevents_shutdown(bc);
...@@ -418,6 +419,7 @@ void tick_broadcast_control(enum tick_broadcast_mode mode) ...@@ -418,6 +419,7 @@ void tick_broadcast_control(enum tick_broadcast_mode mode)
else else
tick_broadcast_setup_oneshot(bc); tick_broadcast_setup_oneshot(bc);
} }
}
raw_spin_unlock(&tick_broadcast_lock); raw_spin_unlock(&tick_broadcast_lock);
} }
EXPORT_SYMBOL_GPL(tick_broadcast_control); EXPORT_SYMBOL_GPL(tick_broadcast_control);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment