aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederic Weisbecker <frederic@kernel.org>2017-11-06 10:01:28 -0500
committerIngo Molnar <mingo@kernel.org>2017-11-08 05:13:54 -0500
commita69682200db9c2c26594188f81dd2df560af4683 (patch)
tree2b09e7888b790ffb0ed07f6f145e4c53df6c6707
parent2c11dba00a39007b457c7607c1b1a4db95ca04bc (diff)
timers/posix-cpu-timers: Use lockdep to assert IRQs are disabled/enabled
Use lockdep to check that IRQs are enabled or disabled as expected. This way the sanity check only shows overhead when concurrency correctness debug code is enabled. Signed-off-by: Frederic Weisbecker <frederic@kernel.org> Acked-by: Thomas Gleixner <tglx@linutronix.de> Cc: David S . Miller <davem@davemloft.net> Cc: Lai Jiangshan <jiangshanlai@gmail.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Tejun Heo <tj@kernel.org> Link: http://lkml.kernel.org/r/1509980490-4285-13-git-send-email-frederic@kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--kernel/time/posix-cpu-timers.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/time/posix-cpu-timers.c b/kernel/time/posix-cpu-timers.c
index 5b117110b55b..1f27887aa194 100644
--- a/kernel/time/posix-cpu-timers.c
+++ b/kernel/time/posix-cpu-timers.c
@@ -603,7 +603,7 @@ static int posix_cpu_timer_set(struct k_itimer *timer, int timer_flags,
603 /* 603 /*
604 * Disarm any old timer after extracting its expiry time. 604 * Disarm any old timer after extracting its expiry time.
605 */ 605 */
606 WARN_ON_ONCE(!irqs_disabled()); 606 lockdep_assert_irqs_disabled();
607 607
608 ret = 0; 608 ret = 0;
609 old_incr = timer->it.cpu.incr; 609 old_incr = timer->it.cpu.incr;
@@ -1034,7 +1034,7 @@ static void posix_cpu_timer_rearm(struct k_itimer *timer)
1034 /* 1034 /*
1035 * Now re-arm for the new expiry time. 1035 * Now re-arm for the new expiry time.
1036 */ 1036 */
1037 WARN_ON_ONCE(!irqs_disabled()); 1037 lockdep_assert_irqs_disabled();
1038 arm_timer(timer); 1038 arm_timer(timer);
1039unlock: 1039unlock:
1040 unlock_task_sighand(p, &flags); 1040 unlock_task_sighand(p, &flags);
@@ -1125,7 +1125,7 @@ void run_posix_cpu_timers(struct task_struct *tsk)
1125 struct k_itimer *timer, *next; 1125 struct k_itimer *timer, *next;
1126 unsigned long flags; 1126 unsigned long flags;
1127 1127
1128 WARN_ON_ONCE(!irqs_disabled()); 1128 lockdep_assert_irqs_disabled();
1129 1129
1130 /* 1130 /*
1131 * The fast path checks that there are no expired thread or thread 1131 * The fast path checks that there are no expired thread or thread