Hi all, These here patches are the result of Mathieu and Steve trying to get commit 865e63b04e9b2 ("tracing: Add back in rcu_irq_enter/exit_irqson() for rcuidle tracepoints") reverted again. One of the things discovered is that tracing MUST NOT happen before nmi_enter() or after nmi_exit(). Audit results of the previous version are still valid. Changes since -v1: - Added tags - Changed #4; changed nmi_enter() to use __preempt_count_add() vs marking preempt_count_add() notrace. - Changed #5; confusion on which functions are notrace due to Makefile - Added #9; remove limitation on the perf-function-trace coupling