lockdep: Prepare for noinstr sections
authorPeter Zijlstra <peterz@infradead.org>
Wed, 18 Mar 2020 13:22:03 +0000 (14:22 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 19 May 2020 13:47:21 +0000 (15:47 +0200)
commitc86e9b987cea3dd0209203e714553a47f5d7c6dd
tree482f9f9344ca9854ab99444ba49dad7fb2df86bf
parent0995a5dfbe49badff78e78761fb66f46579f2f9a
lockdep: Prepare for noinstr sections

Force inlining and prevent instrumentation of all sorts by marking the
functions which are invoked from low level entry code with 'noinstr'.

Split the irqflags tracking into two parts. One which does the heavy
lifting while RCU is watching and the final one which can be invoked after
RCU is turned off.

Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>
Link: https://lkml.kernel.org/r/20200505134100.484532537@linutronix.de
include/linux/irqflags.h
include/linux/sched.h
kernel/locking/lockdep.c
kernel/trace/trace_preemptirq.c
lib/debug_locks.c