linux-trace-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: Daniel Bristot de Oliveira <bristot@kernel.org>
Cc: Tao Zhou <tao.zhou@linux.dev>, Ingo Molnar <mingo@redhat.com>,
	Tom Zanussi <zanussi@kernel.org>,
	Masami Hiramatsu <mhiramat@kernel.org>,
	Juri Lelli <juri.lelli@redhat.com>,
	Clark Williams <williams@redhat.com>,
	John Kacur <jkacur@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	linux-rt-users@vger.kernel.org,
	linux-trace-devel@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH V7 00/14] RTLA: An interface for osnoise/timerlat tracers
Date: Wed, 24 Nov 2021 17:11:48 -0500	[thread overview]
Message-ID: <20211124171148.1530418d@gandalf.local.home> (raw)
In-Reply-To: <cover.1635535309.git.bristot@kernel.org>

On Fri, 29 Oct 2021 21:26:03 +0200
Daniel Bristot de Oliveira <bristot@kernel.org> wrote:

> The rtla(1) is a meta-tool that includes a set of commands that
> aims to analyze the real-time properties of Linux. But instead of
> testing Linux as a black box, rtla leverages kernel tracing
> capabilities to provide precise information about the properties
> and root causes of unexpected results.
> 
> To start, it presents an interface to the osnoise and timerlat tracers.
> In the future, it will also serve as home to the rtsl [1] and other
> latency/noise tracers.
> 
> If you just want to run it, you can download the tarball here:
>   - https://bristot.me/files/rtla/tarball/rtla-0.3.tar.bz2
> 
> To compile rtla on fedora you need:
>   $ git clone git://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git
>   $ cd libtraceevent/
>   $ make
>   $ sudo make install
>   $ cd ..
>   $ git clone git://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git
>   $ cd libtracefs/
>   $ make
>   $ sudo make install
>   $ cd ..
>   $ sudo dnf install python3-docutils procps-devel
>   $ cd $rtla_src
>   $ make
>   $ sudo make install

Add a README to the above, so that people will know what dependencies there
are.

Thanks!

-- Steve


> 
> The tracing option (-t) depends some kernel patches that are
> available at [2].
> 
> This tool was be discussed at the RT-MC during LPC2021 [3]
> 
> [1] rtsl: https://github.com/bristot/rtsl/
> [2] https://lore.kernel.org/lkml/cover.1635533292.git.bristot@kernel.org/
> [3] https://youtu.be/cZUzc0U1jJ4
> 
> Changes from v6:
>   - Revisited osnoise option config functions
>   - Properly handles offline CPUs
>   - Some cleanups
>   - Fixed an histogram allocation problem (Tao Zhou)
>   - Revisited open()/read()/write() (Tao Zhou)
> Changes from v5:
>   - Fix retval check in save_trace_to_file() (Tao Zhou)
>   - Fix goto logic in save_trace_to_file() (Tao Zhou)
>   - Removed unused save_trace_pipe_to_file() function
>   - Correctly handle an error on osnoise_set_* functions during
>     "apply config" for all tools (Tao Zhou)
> Changes from v3:
>   - Add cross-compile support (Ahmed S. Darwish)
>   - Move documentation to Documentation/tools/rtla (Jonathan Corbet)
>   - Use .rst format for documentation (Jonathan Corbet)
>   - Use include option from .rst to group common parts of the documentation
>   - Makefile (main and doc) cleanups
> Changes from v2:
>   - Fix the miss conception of the "size" for kernel histograms (Steven/Tom)
>   - Change the --skip-zeros to --with-zeros option as the former is better
>     for humans (and the latter for computers to plot charts).
>   - A lot of checkpatch fixes for the user-space part.
> Changes from v1:
>   - Fixes -t options on osnoise tracers (-t means --trace for all tools now)
>   - Fixes --bucket-size references (not --bucket_size)
> 
> Daniel Bristot de Oliveira (14):
>   rtla: Real-Time Linux Analysis tool
>   rtla: Helper functions for rtla
>   rtla: Add osnoise tool
>   rtla/osnoise: Add osnoise top mode
>   rtla/osnoise: Add the hist mode
>   rtla: Add timerlat tool and timelart top mode
>   rtla/timerlat: Add timerlat hist mode
>   rtla: Add Documentation
>   rtla: Add rtla osnoise man page
>   rtla: Add rtla osnoise top documentation
>   rtla: Add rtla osnoise hist documentation
>   rtla: Add rtla timerlat documentation
>   rtla: Add rtla timerlat top documentation
>   rtla: Add rtla timerlat hist documentation
> 
>  Documentation/tools/rtla/Makefile             |   41 +
>  Documentation/tools/rtla/common_appendix.rst  |   12 +
>  .../tools/rtla/common_hist_options.rst        |   23 +
>  Documentation/tools/rtla/common_options.rst   |   24 +
>  .../tools/rtla/common_osnoise_description.rst |    8 +
>  .../tools/rtla/common_osnoise_options.rst     |   17 +
>  .../rtla/common_timerlat_description.rst      |   10 +
>  .../tools/rtla/common_timerlat_options.rst    |   16 +
>  .../tools/rtla/common_top_options.rst         |    3 +
>  .../tools/rtla/rtla-osnoise-hist.rst          |   66 ++
>  Documentation/tools/rtla/rtla-osnoise-top.rst |   61 +
>  Documentation/tools/rtla/rtla-osnoise.rst     |   59 +
>  .../tools/rtla/rtla-timerlat-hist.rst         |  106 ++
>  .../tools/rtla/rtla-timerlat-top.rst          |  145 +++
>  Documentation/tools/rtla/rtla-timerlat.rst    |   57 +
>  Documentation/tools/rtla/rtla.rst             |   48 +
>  tools/tracing/rtla/Makefile                   |  102 ++
>  tools/tracing/rtla/src/osnoise.c              | 1017 +++++++++++++++++
>  tools/tracing/rtla/src/osnoise.h              |   96 ++
>  tools/tracing/rtla/src/osnoise_hist.c         |  799 +++++++++++++
>  tools/tracing/rtla/src/osnoise_top.c          |  577 ++++++++++
>  tools/tracing/rtla/src/rtla.c                 |   87 ++
>  tools/tracing/rtla/src/timerlat.c             |   72 ++
>  tools/tracing/rtla/src/timerlat.h             |    4 +
>  tools/tracing/rtla/src/timerlat_hist.c        |  820 +++++++++++++
>  tools/tracing/rtla/src/timerlat_top.c         |  615 ++++++++++
>  tools/tracing/rtla/src/trace.c                |  192 ++++
>  tools/tracing/rtla/src/trace.h                |   27 +
>  tools/tracing/rtla/src/utils.c                |  433 +++++++
>  tools/tracing/rtla/src/utils.h                |   56 +
>  30 files changed, 5593 insertions(+)
>  create mode 100644 Documentation/tools/rtla/Makefile
>  create mode 100644 Documentation/tools/rtla/common_appendix.rst
>  create mode 100644 Documentation/tools/rtla/common_hist_options.rst
>  create mode 100644 Documentation/tools/rtla/common_options.rst
>  create mode 100644 Documentation/tools/rtla/common_osnoise_description.rst
>  create mode 100644 Documentation/tools/rtla/common_osnoise_options.rst
>  create mode 100644 Documentation/tools/rtla/common_timerlat_description.rst
>  create mode 100644 Documentation/tools/rtla/common_timerlat_options.rst
>  create mode 100644 Documentation/tools/rtla/common_top_options.rst
>  create mode 100644 Documentation/tools/rtla/rtla-osnoise-hist.rst
>  create mode 100644 Documentation/tools/rtla/rtla-osnoise-top.rst
>  create mode 100644 Documentation/tools/rtla/rtla-osnoise.rst
>  create mode 100644 Documentation/tools/rtla/rtla-timerlat-hist.rst
>  create mode 100644 Documentation/tools/rtla/rtla-timerlat-top.rst
>  create mode 100644 Documentation/tools/rtla/rtla-timerlat.rst
>  create mode 100644 Documentation/tools/rtla/rtla.rst
>  create mode 100644 tools/tracing/rtla/Makefile
>  create mode 100644 tools/tracing/rtla/src/osnoise.c
>  create mode 100644 tools/tracing/rtla/src/osnoise.h
>  create mode 100644 tools/tracing/rtla/src/osnoise_hist.c
>  create mode 100644 tools/tracing/rtla/src/osnoise_top.c
>  create mode 100644 tools/tracing/rtla/src/rtla.c
>  create mode 100644 tools/tracing/rtla/src/timerlat.c
>  create mode 100644 tools/tracing/rtla/src/timerlat.h
>  create mode 100644 tools/tracing/rtla/src/timerlat_hist.c
>  create mode 100644 tools/tracing/rtla/src/timerlat_top.c
>  create mode 100644 tools/tracing/rtla/src/trace.c
>  create mode 100644 tools/tracing/rtla/src/trace.h
>  create mode 100644 tools/tracing/rtla/src/utils.c
>  create mode 100644 tools/tracing/rtla/src/utils.h
> 


  parent reply	other threads:[~2021-11-24 22:11 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-29 19:26 [PATCH V7 00/14] RTLA: An interface for osnoise/timerlat tracers Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 01/14] rtla: Real-Time Linux Analysis tool Daniel Bristot de Oliveira
2021-11-24 21:28   ` Steven Rostedt
2021-11-25 13:37     ` Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 02/14] rtla: Helper functions for rtla Daniel Bristot de Oliveira
2021-11-24 21:37   ` Steven Rostedt
2021-11-25 13:42     ` Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 03/14] rtla: Add osnoise tool Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 04/14] rtla/osnoise: Add osnoise top mode Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 05/14] rtla/osnoise: Add the hist mode Daniel Bristot de Oliveira
2021-11-24 22:12   ` Steven Rostedt
2021-11-24 22:15     ` Steven Rostedt
2021-11-25 13:45       ` Daniel Bristot de Oliveira
2021-11-25 14:20         ` Steven Rostedt
2021-11-25 14:30           ` Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 06/14] rtla: Add timerlat tool and timelart top mode Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 07/14] rtla/timerlat: Add timerlat hist mode Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 08/14] rtla: Add Documentation Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 09/14] rtla: Add rtla osnoise man page Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 10/14] rtla: Add rtla osnoise top documentation Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 11/14] rtla: Add rtla osnoise hist documentation Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 12/14] rtla: Add rtla timerlat documentation Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 13/14] rtla: Add rtla timerlat top documentation Daniel Bristot de Oliveira
2021-10-29 19:26 ` [PATCH V7 14/14] rtla: Add rtla timerlat hist documentation Daniel Bristot de Oliveira
2021-11-24 22:11 ` Steven Rostedt [this message]
2021-11-25 13:46   ` [PATCH V7 00/14] RTLA: An interface for osnoise/timerlat tracers Daniel Bristot de Oliveira

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211124171148.1530418d@gandalf.local.home \
    --to=rostedt@goodmis.org \
    --cc=bigeasy@linutronix.de \
    --cc=bristot@kernel.org \
    --cc=jkacur@redhat.com \
    --cc=juri.lelli@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rt-users@vger.kernel.org \
    --cc=linux-trace-devel@vger.kernel.org \
    --cc=mhiramat@kernel.org \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=tao.zhou@linux.dev \
    --cc=tglx@linutronix.de \
    --cc=williams@redhat.com \
    --cc=zanussi@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).