rtla/timerlat: Fix histogram report when a cpu count is 0
authorJohn Kacur <jkacur@redhat.com>
Fri, 10 May 2024 19:03:18 +0000 (15:03 -0400)
committerDaniel Bristot de Oliveira <bristot@kernel.org>
Thu, 16 May 2024 14:45:40 +0000 (16:45 +0200)
commit01b05fc0e5f3aec443a9a8ffa0022cbca2fd3608
treea4ba261c43cddf94e1868d74b8a173d3ad96089f
parente9a4062e1527238c5649d0f4be794a8566fd77c9
rtla/timerlat: Fix histogram report when a cpu count is 0

On short runs it is possible to get no samples on a cpu, like this:

  # rtla timerlat hist -u -T50

  Index   IRQ-001   Thr-001   Usr-001   IRQ-002   Thr-002   Usr-002
  2             1         0         0         0         0         0
  33            0         1         0         0         0         0
  36            0         0         1         0         0         0
  49            0         0         0         1         0         0
  52            0         0         0         0         1         0
  over:         0         0         0         0         0         0
  count:        1         1         1         1         1         0
  min:          2        33        36        49        52 18446744073709551615
  avg:          2        33        36        49        52         -
  max:          2        33        36        49        52         0
  rtla timerlat hit stop tracing
    IRQ handler delay: (exit from idle)     48.21 us (91.09 %)
    IRQ latency:     49.11 us
    Timerlat IRQ duration:      2.17 us (4.09 %)
    Blocking thread:      1.01 us (1.90 %)
                  swapper/2:0              1.01 us
  ------------------------------------------------------------------------
    Thread latency:     52.93 us (100%)

  Max timerlat IRQ latency from idle: 49.11 us in cpu 2

Note, the value 18446744073709551615 is the same as ~0.

Fix this by reporting no results for the min, avg and max if the count
is 0.

Link: https://lkml.kernel.org/r/20240510190318.44295-1-jkacur@redhat.com
Cc: stable@vger.kernel.org
Fixes: 1eeb6328e8b3 ("rtla/timerlat: Add timerlat hist mode")
Suggested-by: Daniel Bristot de Oliveria <bristot@kernel.org>
Signed-off-by: John Kacur <jkacur@redhat.com>
Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org>
tools/tracing/rtla/src/timerlat_hist.c