diff options
author | Ingo Molnar <mingo@kernel.org> | 2018-06-26 09:02:41 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2018-06-26 09:02:41 +0200 |
commit | f446474889c06883a3879faa0896e2359e812a6b (patch) | |
tree | 95634685d56dd532d1e9b73fbd07ca389296911b /kernel/softirq.c | |
parent | 01bdee64f9cf8e15f998bf52789ed9d0ebdfa621 (diff) | |
parent | 6f0d349d922ba44e4348a17a78ea51b7135965b1 (diff) |
Merge branch 'linus' into perf/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/softirq.c')
-rw-r--r-- | kernel/softirq.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/kernel/softirq.c b/kernel/softirq.c index de2f57fddc04..900dcfee542c 100644 --- a/kernel/softirq.c +++ b/kernel/softirq.c @@ -139,9 +139,13 @@ static void __local_bh_enable(unsigned int cnt) { lockdep_assert_irqs_disabled(); + if (preempt_count() == cnt) + trace_preempt_on(CALLER_ADDR0, get_lock_parent_ip()); + if (softirq_count() == (cnt & SOFTIRQ_MASK)) trace_softirqs_on(_RET_IP_); - preempt_count_sub(cnt); + + __preempt_count_sub(cnt); } /* |