ftrace: add logic to record overruns
This patch sets up the infrastructure to record overruns of the tracing
buffer.
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
index 8991c5e..c1ec134 100644
--- a/kernel/trace/trace.h
+++ b/kernel/trace/trace.h
@@ -97,6 +97,7 @@
void *trace_head; /* producer */
void *trace_tail; /* consumer */
unsigned long trace_idx;
+ unsigned long overrun;
unsigned long saved_latency;
unsigned long critical_start;
unsigned long critical_end;
@@ -157,10 +158,13 @@
* results to users and which routines might sleep, etc:
*/
struct trace_iterator {
- struct trace_seq seq;
struct trace_array *tr;
struct tracer *trace;
+ long last_overrun[NR_CPUS];
+ long overrun[NR_CPUS];
+ /* The below is zeroed out in pipe_read */
+ struct trace_seq seq;
struct trace_entry *ent;
int cpu;