| From ac112e6441fbd2e0d39303101eb3f650bcdb1c7a Mon Sep 17 00:00:00 2001 |
| From: "Srivatsa S. Bhat (VMware)" <srivatsa@csail.mit.edu> |
| Date: Thu, 10 Oct 2019 11:51:01 -0700 |
| Subject: [PATCH] tracing/hwlat: Don't ignore outer-loop duration when |
| calculating max_latency |
| |
| commit fc64e4ad80d4b72efce116f87b3174f0b7196f8e upstream. |
| |
| max_latency is intended to record the maximum ever observed hardware |
| latency, which may occur in either part of the loop (inner/outer). So |
| we need to also consider the outer-loop sample when updating |
| max_latency. |
| |
| Link: http://lkml.kernel.org/r/157073345463.17189.18124025522664682811.stgit@srivatsa-ubuntu |
| |
| Fixes: e7c15cd8a113 ("tracing: Added hardware latency tracer") |
| Cc: stable@vger.kernel.org |
| Signed-off-by: Srivatsa S. Bhat (VMware) <srivatsa@csail.mit.edu> |
| Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/kernel/trace/trace_hwlat.c b/kernel/trace/trace_hwlat.c |
| index 1e9a404cee2b..8030e24dbf14 100644 |
| --- a/kernel/trace/trace_hwlat.c |
| +++ b/kernel/trace/trace_hwlat.c |
| @@ -256,6 +256,8 @@ static int get_sample(void) |
| /* Keep a running maximum ever recorded hardware latency */ |
| if (sample > tr->max_latency) |
| tr->max_latency = sample; |
| + if (outer_sample > tr->max_latency) |
| + tr->max_latency = outer_sample; |
| } |
| |
| out: |
| -- |
| 2.7.4 |
| |