tracing: Remove obsolete PREEMPTIRQ_EVENTS kconfig option
authorMel Gorman <mgorman@techsingularity.net>
Thu, 9 Apr 2020 10:40:34 +0000 (11:40 +0100)
committerSteven Rostedt (VMware) <rostedt@goodmis.org>
Sat, 6 Jun 2020 00:08:26 +0000 (20:08 -0400)
commit388d8bdb87e01bcea6d0b2bf797b5f6d7b2401fb
tree089b5a342c116668658ef3ea8c5f109840300b2a
parentdaceabf1b494c9e40a93fcc323b1258f557f65a1
tracing: Remove obsolete PREEMPTIRQ_EVENTS kconfig option

The PREEMPTIRQ_EVENTS option is unused after commit c3bc8fd637a9 ("tracing:
Centralize preemptirq tracepoints and unify their usage"). Remove it.

Note that this option is hazardous as it stands. It enables TRACE_IRQFLAGS
event on non-preempt configurations without the irqsoff tracer enabled.
TRACE_IRQFLAGS as it stands incurs significant overhead on each IRQ
entry/exit. This is because trace_hardirqs_[on|off] does all the per-cpu
manipulations and NMI checks even if tracing is completely disabled for
some insane reason.  For example, netperf running UDP_STREAM on localhost
incurs a 4-6% performance penalty without any tracing if IRQFLAGS is
set. It can be put behind a static brach but even the function entry/exit
costs a little bit.

Link: https://lkml.kernel.org/r/20200409104034.GJ3818@techsingularity.net
Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
kernel/trace/Kconfig