aboutsummaryrefslogtreecommitdiff
path: root/kernel/time/timer.c
diff options
context:
space:
mode:
authorDmitry Torokhov <[email protected]>2021-05-04 11:46:00 -0700
committerDmitry Torokhov <[email protected]>2021-05-04 11:46:00 -0700
commitd0034a7a4ac7fae708146ac0059b9c47a1543f0d (patch)
treeac3ac88066f0f80632aa754e3ae008994f2426a2 /kernel/time/timer.c
parent56cfe6f820a6315291eb5a1b82bb49633b993d3b (diff)
parentd12b64b9764ea17554fb230784ebf91287ed807e (diff)
Merge branch 'next' into for-linus
Prepare input updates for 5.13 merge window.
Diffstat (limited to 'kernel/time/timer.c')
-rw-r--r--kernel/time/timer.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/kernel/time/timer.c b/kernel/time/timer.c
index 8dbc008f8942..f475f1a027c8 100644
--- a/kernel/time/timer.c
+++ b/kernel/time/timer.c
@@ -1237,6 +1237,20 @@ int try_to_del_timer_sync(struct timer_list *timer)
}
EXPORT_SYMBOL(try_to_del_timer_sync);
+bool timer_curr_running(struct timer_list *timer)
+{
+ int i;
+
+ for (i = 0; i < NR_BASES; i++) {
+ struct timer_base *base = this_cpu_ptr(&timer_bases[i]);
+
+ if (base->running_timer == timer)
+ return true;
+ }
+
+ return false;
+}
+
#ifdef CONFIG_PREEMPT_RT
static __init void timer_base_init_expiry_lock(struct timer_base *base)
{