• Daniel Bristot de Oliveira's avatar
    rtla: Add timerlat tool and timelart top mode · a828cd18
    Daniel Bristot de Oliveira authored
    The rtla timerlat tool is an interface for the timerlat tracer.
    The timerlat tracer dispatches a kernel thread per-cpu. These threads set a
    periodic timer to wake themselves up and go back to sleep. After the
    wakeup, they collect and generate useful information for the debugging of
    operating system timer latency.
    
    The timerlat tracer outputs information in two ways. It periodically
    prints the timer latency at the timer IRQ handler and the Thread handler.
    It also provides information for each noise via the osnoise tracepoints.
    
    The rtla timerlat top mode displays a summary of the periodic output from
    the timerlat tracer.
    
    Here is one example of the rtla timerlat tool output:
     ---------- %< ----------
    [root@alien ~]# rtla timerlat top -c 0-3 -d 1m
                                         Timer Latency
      0 00:01:00   |          IRQ Timer Latency (us)        |         Thread Timer Latency (us)
    CPU COUNT      |      cur       min       avg       max |      cur       min       avg       max
      0 #60001     |        0         0         0         3 |        1         1         1         6
      1 #60001     |        0         0         0         3 |        2         1         1         5
      2 #60001     |        0         0         1         6 |        1         1         2         7
      3 #60001     |        0         0         0         7 |        1         1         1        11
     ---------- >% ----------
    
    Running:
      # rtla timerlat --help
      # rtla timerlat top --help
    provides information about the available options.
    
    Link: https://lkml.kernel.org/r/e95032e20c2b88c962195bf7693bb53c9ebcced8.1639158831.git.bristot@kernel.org
    
    Cc: Tao Zhou <tao.zhou@linux.dev>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Tom Zanussi <zanussi@kernel.org>
    Cc: Masami Hiramatsu <mhiramat@kernel.org>
    Cc: Juri Lelli <juri.lelli@redhat.com>
    Cc: Clark Williams <williams@redhat.com>
    Cc: John Kacur <jkacur@redhat.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
    Cc: Daniel Bristot de Oliveira <bristot@kernel.org>
    Cc: linux-rt-users@vger.kernel.org
    Cc: linux-trace-devel@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: default avatarDaniel Bristot de Oliveira <bristot@kernel.org>
    Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    a828cd18
rtla.c 1.57 KB