aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kernel/trace/ring_buffer.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
index e145969a8eda..aa40ae92233b 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -1483,7 +1483,9 @@ rb_reserve_next_event(struct ring_buffer_per_cpu *cpu_buffer,
1483 1483
1484static int trace_irq_level(void) 1484static int trace_irq_level(void)
1485{ 1485{
1486 return hardirq_count() + softirq_count() + in_nmi(); 1486 return (hardirq_count() >> HARDIRQ_SHIFT) +
1487 (softirq_count() >> + SOFTIRQ_SHIFT) +
1488 !!in_nmi();
1487} 1489}
1488 1490
1489static int trace_recursive_lock(void) 1491static int trace_recursive_lock(void)