• John Kacur's avatar
    rtla/timerlat: Fix histogram report when a cpu count is 0 · 01b05fc0
    John Kacur authored
    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: 1eeb6328 ("rtla/timerlat: Add timerlat hist mode")
    Suggested-by: default avatarDaniel Bristot de Oliveria <bristot@kernel.org>
    Signed-off-by: default avatarJohn Kacur <jkacur@redhat.com>
    Signed-off-by: default avatarDaniel Bristot de Oliveira <bristot@kernel.org>
    01b05fc0
timerlat_hist.c 33.8 KB