From: Frederic Weisbecker <fweisbec@gmail.com>
To: LKML <linux-kernel@vger.kernel.org>,
Steven Rostedt <rostedt@goodmis.org>,
Ingo Molnar <mingo@kernel.org>,
Arnaldo Carvalho de Melo <acme@infradead.org>,
Peter Zijlstra <peterz@infradead.org>,
Thomas Gleixner <tglx@linutronix.de>,
Borislav Petkov <bp@alien8.de>,
Namhyung Kim <namhyung.kim@lge.com>, Jiri Olsa <jolsa@redhat.com>
Cc: Arun Sharma <asharma@fb.com>, Michael Rubin <mrubin@google.com>,
David Sharp <dhsharp@google.com>,
Vaibhav Nagarnaik <vnagarnaik@google.com>,
Julia Lawall <julia@diku.dk>, Tom Zanussi <tzanussi@gmail.com>
Subject: Our failure on tracing tools unification (Was: Re: [RFC][PATCH 00/15] tools: Unify perf and trace-cmd trace event format parsing v2)
Date: Mon, 23 Apr 2012 16:47:45 +0200 [thread overview]
Message-ID: <20120423144743.GB29985@somewhere> (raw)
In-Reply-To: <1333666086-6517-1-git-send-email-fweisbec@gmail.com>
On Fri, Apr 06, 2012 at 12:47:51AM +0200, Frederic Weisbecker wrote:
>
> Hi,
>
> So this is a new iteration of the libtracevent library, basically a
> rebase of https://lkml.org/lkml/2011/8/5/299 against latest progresses
> (latest tip/perf/core + tip/perf/urgent).
>
> This library unifies the trace events parsing code between perf and
> trace-cmd. I initially took this parsing code from trace-cmd to make
> perf able to display trace-events and play with their contents.
>
> But there is a continuous drift between perf and trace-cmd trace event
> parsing code since then because the fork I did and the original code in
> trace-cmd have never merged into a common entity. As a result, perf
> stays backward because we haven't ported all the progresses that
> trace-cmd did in this area.
>
> Considering the reactions after the last attempt, it appears the
> unification of this code is uncontroversial. What seem to cause
> problems is how we do it:
>
> - as an internal library inside perf, where other tools can hook
> - as a self-contained library in tools/lib, independant from perf
>
> The argument for the first solution was that trace events format
> is not mature enough to be available for any tool and thus it's too
> early to release a library that would engrave into the stone an
> interface to it, preventing the events format from evolving in the
> future.
>
> However users of trace events are there already and they all use
> their own parsing. They sometimes wrongly rely on the stability of a
> whole event layout or its ascii structure. The lack of a common and
> independant library is eventually what prevents us from doing progresses
> or make evolutions on trace events.
>
> So I think we really need to restart the debate. We strongly need to make
> progresses in this area so I'm posting this iteration in the hope we
> can move forward. With the coming of uprobes, there are some chances
> that our tracing becomes more important in the future. Let's join
> our efforts.
I'm trying to summarize some conversations that I got outside the mailing
list (and I truly regret because it should have been debated publicly).
Ingo doesn't seem to want this library outside perf in order to avoid
the fragmentation of the efforts on tracing tools.
We indeed want to unify our tools, like merging trace-cmd into perf.
And after talking with Steve about that, he told me he wants to have
both tools unified as well. But he wants to keep libparseevent as
a generic standalone library.
Indeed, it makes it possible for those who want to use trace events
on their own tools to do it properly. I believe powertop fits into
this scheme. Trace events are a generally useful feature. I wish
we gather our efforts on one tool like perf but I don't want to force
everyone to this path. So I personally agree with that library
to be standalone.
Thus I think we are stuck again.
Now libtraceevent is perhaps going to become a separate project. I don't
know.
By backporting and sending this libparsevent patch series, I felt pretty
eager in that we could make a great step toward the tracing code unification.
But now with the current state of the picture, I'm worried about
the future of tracing in perf tools. I don't want to spend my time to backport
the features of the parse event code because I refuse to hack around
politics disagreements. So probably the current code is going to rot. Unless
somebody wants to handle this unpleasant task.
next prev parent reply other threads:[~2012-04-23 14:47 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-05 22:47 [RFC][PATCH 00/15] tools: Unify perf and trace-cmd trace event format parsing v2 Frederic Weisbecker
2012-04-05 22:47 ` [PATCH 01/15] perf: Separate out trace-cmd parse-events from perf files Frederic Weisbecker
2012-04-06 11:36 ` Borislav Petkov
2012-04-06 15:23 ` Frederic Weisbecker
2012-04-05 22:47 ` [PATCH 02/15] tools/events: Add files to create libtraceevent.a Frederic Weisbecker
2012-04-06 0:08 ` David Ahern
2012-04-06 0:18 ` Steven Rostedt
2012-04-06 0:24 ` David Ahern
2012-04-06 11:40 ` Borislav Petkov
2012-04-06 13:21 ` Borislav Petkov
2012-04-06 22:15 ` Steven Rostedt
2012-04-07 9:08 ` Borislav Petkov
2012-04-11 15:20 ` Arnaldo Carvalho de Melo
2012-04-11 15:38 ` Steven Rostedt
2012-04-11 17:47 ` Frederic Weisbecker
2012-04-11 17:54 ` Arnaldo Carvalho de Melo
2012-04-05 22:47 ` [PATCH 03/15] perf: Build libtraceevent.a Frederic Weisbecker
2012-04-06 11:45 ` Borislav Petkov
2012-04-06 15:26 ` Frederic Weisbecker
2012-04-06 15:51 ` Borislav Petkov
2012-04-09 17:10 ` Frederic Weisbecker
2012-04-05 22:47 ` [PATCH 04/15] events: Update tools/lib/traceevent to work with perf Frederic Weisbecker
2012-04-06 11:48 ` Borislav Petkov
2012-04-09 17:11 ` Frederic Weisbecker
2012-04-05 22:47 ` [PATCH 05/15] perf: Have perf use the new libtraceevent.a library Frederic Weisbecker
2012-04-05 22:47 ` [PATCH 06/15] perf/events: Add flag to produce nsec output Frederic Weisbecker
2012-04-05 22:47 ` [PATCH 07/15] perf/events: Add flag/symbol format_flags Frederic Weisbecker
2012-04-05 22:47 ` [PATCH 08/15] perf/events: Correct size given to memset Frederic Weisbecker
2012-04-06 11:24 ` Borislav Petkov
2012-04-06 12:00 ` Borislav Petkov
2012-04-06 12:27 ` Steven Rostedt
2012-04-05 22:48 ` [PATCH 09/15] parse-events: Handle invalid opcode parsing gracefully Frederic Weisbecker
2012-04-05 22:48 ` [PATCH 10/15] parse-events: Handle opcode parsing error Frederic Weisbecker
2012-04-05 22:48 ` [PATCH 11/15] parse-events: Let pevent_free() take a NULL pointer Frederic Weisbecker
2012-04-05 22:48 ` [PATCH 12/15] parse-events: Support '+' opcode in print format Frederic Weisbecker
2012-04-05 22:48 ` [PATCH 13/15] parse-events: Allow '*' and '/' operations in TP_printk Frederic Weisbecker
2012-04-05 22:48 ` [PATCH 14/15] parse-event: Fix memset pointer size bug in handle Frederic Weisbecker
2012-04-05 22:48 ` [PATCH 15/15] parse-events: Rename struct record to struct pevent_record Frederic Weisbecker
2012-04-06 3:07 ` [RFC][PATCH 00/15] tools: Unify perf and trace-cmd trace event format parsing v2 David Sharp
2012-04-06 15:11 ` Frederic Weisbecker
2012-04-09 10:13 ` Namhyung Kim
2012-04-23 14:47 ` Frederic Weisbecker [this message]
2012-04-23 15:08 ` Our failure on tracing tools unification (Was: Re: [RFC][PATCH 00/15] tools: Unify perf and trace-cmd trace event format parsing v2) Peter Zijlstra
2012-04-23 15:31 ` Steven Rostedt
2012-04-23 16:07 ` Borislav Petkov
2012-04-24 9:10 ` Thomas Gleixner
2012-04-25 8:05 ` Ingo Molnar
2012-04-25 12:39 ` Frederic Weisbecker
2012-04-25 14:19 ` Our failure on tracing tools unification Frank Ch. Eigler
2012-04-25 16:37 ` Arnaldo Carvalho de Melo
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=20120423144743.GB29985@somewhere \
--to=fweisbec@gmail.com \
--cc=acme@infradead.org \
--cc=asharma@fb.com \
--cc=bp@alien8.de \
--cc=dhsharp@google.com \
--cc=jolsa@redhat.com \
--cc=julia@diku.dk \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=mrubin@google.com \
--cc=namhyung.kim@lge.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=tzanussi@gmail.com \
--cc=vnagarnaik@google.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.