Hi, These patches improve the design of preemptirq tracepoints, clean up several of the ifdeffery and overall makes the feature configuration cleaner and less confusing. It also uses the tracepoints infra for the lockdep hooks for irqs on/off thus making a central point for all users of the event (kernel/trace/trace_preemptirq.c). Patches based on v4.16-rc5.
Changes since v1: - Make PROVE_LOCKING depend on FTRACE since PROVE_LOCKING needs to register hooks in this series which needs PREEMPTIRQ_TRACEPOINTS. Changes since RFC [1]: - handle case where lockdep warnings occur in tracepoint code (2/2) - protect tracepoint probe registration in lockdep init by ifdef. Joel Fernandes (2): tracing: Improve design of preemptirq tracepoints and its users tracepoint: Prevent false-positive lockdep warnings [1] https://patchwork.kernel.org/patch/10202163/ include/linux/ftrace.h | 11 +- include/linux/irqflags.h | 11 +- include/linux/lockdep.h | 6 +- include/linux/preempt.h | 2 +- include/linux/tracepoint.h | 23 +++- include/trace/events/preemptirq.h | 23 ++-- init/main.c | 2 +- kernel/locking/lockdep.c | 31 ++--- kernel/sched/core.c | 2 +- kernel/trace/Kconfig | 19 ++- kernel/trace/Makefile | 2 +- kernel/trace/trace_irqsoff.c | 206 +++++++----------------------- kernel/trace/trace_preemptirq.c | 70 ++++++++++ lib/Kconfig.debug | 2 +- 14 files changed, 192 insertions(+), 218 deletions(-) create mode 100644 kernel/trace/trace_preemptirq.c Cc: Steven Rostedt <rost...@goodmis.org> Cc: Peter Zilstra <pet...@infradead.org> Cc: Ingo Molnar <mi...@redhat.com> Cc: Mathieu Desnoyers <mathieu.desnoy...@efficios.com> Cc: Tom Zanussi <tom.zanu...@linux.intel.com> Cc: Namhyung Kim <namhy...@kernel.org> Signed-off-by: Joel Fernandes <joe...@google.com> -- 2.16.2.804.g6dcf76e118-goog