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 01/14] rtla: Real-Time Linux Analysis tool
Date: Wed, 24 Nov 2021 16:28:14 -0500	[thread overview]
Message-ID: <20211124162814.352ad8fd@gandalf.local.home> (raw)
In-Reply-To: <7c776914f3316cf6b5c21ec01b1e4eae497bb510.1635535309.git.bristot@kernel.org>
On Fri, 29 Oct 2021 21:26:04 +0200
Daniel Bristot de Oliveira <bristot@kernel.org> wrote:
> The rtla 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.
> 
> rtla --help works and provide information about the available options.
> 
> This is just the "main" and the Makefile, no function yet.
> 
> Cc: Steven Rostedt <rostedt@goodmis.org>
> 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: Daniel Bristot de Oliveira <bristot@kernel.org>
> ---
>  tools/tracing/rtla/Makefile   | 76 +++++++++++++++++++++++++++++++++++
>  tools/tracing/rtla/src/rtla.c | 72 +++++++++++++++++++++++++++++++++
>  2 files changed, 148 insertions(+)
>  create mode 100644 tools/tracing/rtla/Makefile
>  create mode 100644 tools/tracing/rtla/src/rtla.c
> 
> diff --git a/tools/tracing/rtla/Makefile b/tools/tracing/rtla/Makefile
> new file mode 100644
> index 000000000000..33f154f86519
> --- /dev/null
> +++ b/tools/tracing/rtla/Makefile
> @@ -0,0 +1,76 @@
> +NAME	:=	rtla
> +VERSION	:=	0.3
> +
> +# From libtracefs:
> +# Makefiles suck: This macro sets a default value of $(2) for the
> +# variable named by $(1), unless the variable has been set by
> +# environment or command line. This is necessary for CC and AR
> +# because make sets default values, so the simpler ?= approach
> +# won't work as expected.
> +define allow-override
> +  $(if $(or $(findstring environment,$(origin $(1))),\
> +            $(findstring command line,$(origin $(1)))),,\
> +    $(eval $(1) = $(2)))
> +endef
> +
> +# Allow setting CC and AR, or setting CROSS_COMPILE as a prefix.
> +$(call allow-override,CC,$(CROSS_COMPILE)gcc)
> +$(call allow-override,AR,$(CROSS_COMPILE)ar)
> +$(call allow-override,STRIP,$(CROSS_COMPILE)strip)
> +$(call allow-override,PKG_CONFIG,pkg-config)
> +$(call allow-override,LD_SO_CONF_PATH,/etc/ld.so.conf.d/)
> +$(call allow-override,LDCONFIG,ldconfig)
> +
> +INSTALL	=	install
> +FOPTS	:=	-flto=auto -ffat-lto-objects -fexceptions -fstack-protector-strong \
> +		-fasynchronous-unwind-tables -fstack-clash-protection
> +WOPTS	:= 	-Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -Wno-maybe-uninitialized
> +
> +TRACEFS_HEADERS	:= $$($(PKG_CONFIG) --cflags libtracefs)
> +
> +CFLAGS	:=	-O -g -DVERSION=\"$(VERSION)\" $(FOPTS) $(MOPTS) $(WOPTS) $(TRACEFS_HEADERS)
> +LDFLAGS	:=	-ggdb
> +LIBS	:=	-ltracefs -ltraceevent -lprocps
For the -ltracefs and -ltracevent, you could use:
   $$($PKG_CONFIG) --libs libtracefs)
which would be more robust.
-- Steve
> +
> +SRC	:=	$(wildcard src/*.c)
> +HDR	:=	$(wildcard src/*.h)
> +OBJ	:=	$(SRC:.c=.o)
> +DIRS	:=	src
> +FILES	:=	Makefile
> +CEXT	:=	bz2
> +TARBALL	:=	$(NAME)-$(VERSION).tar.$(CEXT)
> +TAROPTS	:=	-cvjf $(TARBALL)
> +BINDIR	:=	/usr/bin
> +DATADIR	:=	/usr/share
> +DOCDIR	:=	$(DATADIR)/doc
> +MANDIR	:=	$(DATADIR)/man
> +LICDIR	:=	$(DATADIR)/licenses
> +
next prev parent reply	other threads:[~2021-11-24 21:28 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 [this message]
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 ` [PATCH V7 00/14] RTLA: An interface for osnoise/timerlat tracers Steven Rostedt
2021-11-25 13:46   ` 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=20211124162814.352ad8fd@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).