Skip to content

Commit 73ac74c

Browse files
svens-s390Vasily Gorbik
authored andcommitted
lockdep: fix order in trace_hardirqs_off_caller()
Switch order so that locking state is consistent even if the IRQ tracer calls into lockdep again. Acked-by: Peter Zijlstra <[email protected]> Signed-off-by: Sven Schnelle <[email protected]> Signed-off-by: Vasily Gorbik <[email protected]>
1 parent afdf955 commit 73ac74c

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

kernel/trace/trace_preemptirq.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,14 +102,14 @@ NOKPROBE_SYMBOL(trace_hardirqs_on_caller);
102102

103103
__visible void trace_hardirqs_off_caller(unsigned long caller_addr)
104104
{
105+
lockdep_hardirqs_off(CALLER_ADDR0);
106+
105107
if (!this_cpu_read(tracing_irq_cpu)) {
106108
this_cpu_write(tracing_irq_cpu, 1);
107109
tracer_hardirqs_off(CALLER_ADDR0, caller_addr);
108110
if (!in_nmi())
109111
trace_irq_disable_rcuidle(CALLER_ADDR0, caller_addr);
110112
}
111-
112-
lockdep_hardirqs_off(CALLER_ADDR0);
113113
}
114114
EXPORT_SYMBOL(trace_hardirqs_off_caller);
115115
NOKPROBE_SYMBOL(trace_hardirqs_off_caller);

0 commit comments

Comments
 (0)