lkml.org 
[lkml]   [2017]   [Nov]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:locking/core] timers/posix-cpu-timers: Use lockdep to assert IRQs are disabled/enabled
    Commit-ID:  a69682200db9c2c26594188f81dd2df560af4683
    Gitweb: https://git.kernel.org/tip/a69682200db9c2c26594188f81dd2df560af4683
    Author: Frederic Weisbecker <frederic@kernel.org>
    AuthorDate: Mon, 6 Nov 2017 16:01:28 +0100
    Committer: Ingo Molnar <mingo@kernel.org>
    CommitDate: Wed, 8 Nov 2017 11:13:54 +0100

    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>
    ---
    kernel/time/posix-cpu-timers.c | 6 +++---
    1 file changed, 3 insertions(+), 3 deletions(-)

    diff --git a/kernel/time/posix-cpu-timers.c b/kernel/time/posix-cpu-timers.c
    index 5b11711..1f27887 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,
    /*
    * Disarm any old timer after extracting its expiry time.
    */
    - WARN_ON_ONCE(!irqs_disabled());
    + lockdep_assert_irqs_disabled();

    ret = 0;
    old_incr = timer->it.cpu.incr;
    @@ -1034,7 +1034,7 @@ static void posix_cpu_timer_rearm(struct k_itimer *timer)
    /*
    * Now re-arm for the new expiry time.
    */
    - WARN_ON_ONCE(!irqs_disabled());
    + lockdep_assert_irqs_disabled();
    arm_timer(timer);
    unlock:
    unlock_task_sighand(p, &flags);
    @@ -1125,7 +1125,7 @@ void run_posix_cpu_timers(struct task_struct *tsk)
    struct k_itimer *timer, *next;
    unsigned long flags;

    - WARN_ON_ONCE(!irqs_disabled());
    + lockdep_assert_irqs_disabled();

    /*
    * The fast path checks that there are no expired thread or thread
    \
     
     \ /
      Last update: 2017-11-08 21:11    [W:4.099 / U:0.072 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site