android_kernel_motorola_sm6375/kernel/trace
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Steven Rostedt (Red Hat) e7c15cd8a1 tracing: Added hardware latency tracer
The hardware latency tracer has been in the PREEMPT_RT patch for some time.
It is used to detect possible SMIs or any other hardware interruptions that
the kernel is unaware of. Note, NMIs may also be detected, but that may be
good to note as well.

The logic is pretty simple. It simply creates a thread that spins on a
single CPU for a specified amount of time (width) within a periodic window
(window). These numbers may be adjusted by their cooresponding names in

   /sys/kernel/tracing/hwlat_detector/

The defaults are window = 1000000 us (1 second)
                 width  =  500000 us (1/2 second)

The loop consists of:

	t1 = trace_clock_local();
	t2 = trace_clock_local();

Where trace_clock_local() is a variant of sched_clock().

The difference of t2 - t1 is recorded as the "inner" timestamp and also the
timestamp  t1 - prev_t2 is recorded as the "outer" timestamp. If either of
these differences are greater than the time denoted in
/sys/kernel/tracing/tracing_thresh then it records the event.

When this tracer is started, and tracing_thresh is zero, it changes to the
default threshold of 10 us.

The hwlat tracer in the PREEMPT_RT patch was originally written by
Jon Masters. I have modified it quite a bit and turned it into a
tracer.

Based-on-code-by: Jon Masters <jcm@redhat.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2016-09-02 12:47:51 -04:00
..
blktrace.c block: Fix secure erase 2016-08-16 09:16:51 -06:00
bpf_trace.c bpf: Add bpf_probe_write_user BPF helper to be called in tracers 2016-07-25 18:07:48 -07:00
ftrace.c ftrace: Access ret_stack->subtime only in the function profiler 2016-09-01 12:19:40 -04:00
Kconfig tracing: Added hardware latency tracer 2016-09-02 12:47:51 -04:00
Makefile tracing: Added hardware latency tracer 2016-09-02 12:47:51 -04:00
power-traces.c
ring_buffer.c ring-buffer: Prevent overflow of size in ring_buffer_resize() 2016-05-13 16:44:20 -04:00
ring_buffer_benchmark.c
rpm-traces.c
trace.c tracing: Added hardware latency tracer 2016-09-02 12:47:51 -04:00
trace.h tracing: Added hardware latency tracer 2016-09-02 12:47:51 -04:00
trace_benchmark.c
trace_benchmark.h
trace_branch.c
trace_clock.c
trace_entries.h tracing: Added hardware latency tracer 2016-09-02 12:47:51 -04:00
trace_event_perf.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2016-05-17 16:26:30 -07:00
trace_events.c tracing: Show the preempt count of when the event was called 2016-06-20 09:54:21 -04:00
trace_events_filter.c
trace_events_filter_test.h
trace_events_hist.c tracing: Fix use-after-free in hist_register_trigger() 2016-08-02 15:16:30 -04:00
trace_events_trigger.c
trace_export.c
trace_functions.c ftrace: Have set_ftrace_pid use the bitmap like events do 2016-06-20 09:54:19 -04:00
trace_functions_graph.c ftrace: Access ret_stack->subtime only in the function profiler 2016-09-01 12:19:40 -04:00
trace_hwlat.c tracing: Added hardware latency tracer 2016-09-02 12:47:51 -04:00
trace_irqsoff.c
trace_kdb.c
trace_kprobe.c tracing: expose current->comm to [ku]probe events 2016-06-20 09:54:19 -04:00
trace_mmiotrace.c tracing: Expose CPU physical addresses (resource values) for PCI devices 2016-06-20 09:54:22 -04:00
trace_nop.c
trace_output.c tracing: Added hardware latency tracer 2016-09-02 12:47:51 -04:00
trace_output.h
trace_printk.c tracing: Handle NULL formats in hold_module_trace_bprintk_format() 2016-06-20 09:46:12 -04:00
trace_probe.c tracing: expose current->comm to [ku]probe events 2016-06-20 09:54:19 -04:00
trace_probe.h tracing: expose current->comm to [ku]probe events 2016-06-20 09:54:19 -04:00
trace_sched_switch.c
trace_sched_wakeup.c
trace_selftest.c
trace_selftest_dynamic.c
trace_seq.c
trace_stack.c
trace_stat.c
trace_stat.h
trace_syscalls.c
trace_uprobe.c tracing/uprobe: Drop isdigit() check in create_trace_uprobe 2016-09-01 11:18:09 -04:00
tracing_map.c
tracing_map.h