linux_dsm_epyc7002/arch/sh
Steven Rostedt (Red Hat) 7b2c862501 tracing: Add NMI tracing in hwlat detector
As NMIs can also cause latency when interrupts are disabled, the hwlat
detectory has no way to know if the latency it detects is from an NMI or an
SMI or some other hardware glitch.

As ftrace_nmi_enter/exit() funtions are no longer used (except for sh, which
isn't supported anymore), I converted those to "arch_ftrace_nmi_enter/exit"
and use ftrace_nmi_enter/exit() to check if hwlat detector is tracing or
not, and if so, it calls into the hwlat utility.

Since the hwlat detector only has a single kthread that is spinning with
interrupts disabled, it marks what CPU it is on, and if the NMI callback
happens on that CPU, it records the time spent in that NMI. This is added to
the output that is generated by the hwlat detector as:

 #3     inner/outer(us):    9/9     ts:1470836488.206734548
 #4     inner/outer(us):    0/8     ts:1470836497.140808588
 #5     inner/outer(us):    0/6     ts:1470836499.140825168 nmi-total:5 nmi-count:1
 #6     inner/outer(us):    9/9     ts:1470836501.140841748

All time is still tracked in microseconds.

The NMI information is only shown when an NMI occurred during the sample.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2016-09-02 12:47:55 -04:00
..
boards sh: use common clock framework with device tree boards 2016-08-05 03:29:45 +00:00
boot sh: add device tree source for J2 FPGA on Mimas v2 board 2016-08-05 03:38:26 +00:00
cchips genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
configs sh: add defconfig for J-Core J2 2016-08-05 03:38:22 +00:00
drivers These changes improve device tree support (including builtin DTB), add 2016-08-06 09:00:05 -04:00
include These changes improve device tree support (including builtin DTB), add 2016-08-06 09:00:05 -04:00
kernel tracing: Add NMI tracing in hwlat detector 2016-09-02 12:47:55 -04:00
lib sh: New gcc support 2016-03-17 19:45:44 +00:00
lib64
math-emu
mm These changes improve device tree support (including builtin DTB), add 2016-08-06 09:00:05 -04:00
oprofile
tools
Kconfig sh: add SMP support for J2 2016-08-05 03:29:39 +00:00
Kconfig.cpu
Kconfig.debug
Makefile sh: add support for J-Core J2 processor 2016-08-05 03:29:31 +00:00