diff options
author | Ingo Molnar | 2008-12-08 13:52:00 +0100 |
---|---|---|
committer | Ingo Molnar | 2008-12-08 13:52:00 +0100 |
commit | 4d117c5c6b00254e51c61ff5b506ccaba21a5a03 (patch) | |
tree | ecb9d3ee4bfd9610c459c1eb0c0357c2905f3ae4 /kernel/trace/trace_mmiotrace.c | |
parent | sched: add uid information to sched_debug for CONFIG_USER_SCHED (diff) | |
parent | sched: don't export sched_mc_power_savings in laptops (diff) | |
download | kernel-qcow2-linux-4d117c5c6b00254e51c61ff5b506ccaba21a5a03.tar.gz kernel-qcow2-linux-4d117c5c6b00254e51c61ff5b506ccaba21a5a03.tar.xz kernel-qcow2-linux-4d117c5c6b00254e51c61ff5b506ccaba21a5a03.zip |
Merge branch 'sched/urgent' into sched/core
Diffstat (limited to 'kernel/trace/trace_mmiotrace.c')
-rw-r--r-- | kernel/trace/trace_mmiotrace.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/kernel/trace/trace_mmiotrace.c b/kernel/trace/trace_mmiotrace.c index f28484618ff0..e62cbf78eab6 100644 --- a/kernel/trace/trace_mmiotrace.c +++ b/kernel/trace/trace_mmiotrace.c @@ -18,12 +18,14 @@ struct header_iter { static struct trace_array *mmio_trace_array; static bool overrun_detected; +static unsigned long prev_overruns; static void mmio_reset_data(struct trace_array *tr) { int cpu; overrun_detected = false; + prev_overruns = 0; tr->time_start = ftrace_now(tr->cpu); for_each_online_cpu(cpu) @@ -128,16 +130,12 @@ static void mmio_close(struct trace_iterator *iter) static unsigned long count_overruns(struct trace_iterator *iter) { - int cpu; unsigned long cnt = 0; -/* FIXME: */ -#if 0 - for_each_online_cpu(cpu) { - cnt += iter->overrun[cpu]; - iter->overrun[cpu] = 0; - } -#endif - (void)cpu; + unsigned long over = ring_buffer_overruns(iter->tr->buffer); + + if (over > prev_overruns) + cnt = over - prev_overruns; + prev_overruns = over; return cnt; } |