All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
To: "Frank Ch. Eigler" <fche@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
	Arjan van de Ven <arjan@infradead.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	linux-kernel@vger.kernel.org, mingo@elte.hu, alan@redhat.com,
	jbaron@redhat.com
Subject: Re: [PATCH] ftrace: add an fsync tracer
Date: Fri, 7 Nov 2008 00:12:14 -0500	[thread overview]
Message-ID: <20081107051214.GA30350@Krystal> (raw)
In-Reply-To: <20081106232506.GF20928@redhat.com>

Hi Frank,

* Frank Ch. Eigler (fche@redhat.com) wrote:
> Hi -
> 
> On Thu, Nov 06, 2008 at 05:25:29PM -0500, Mathieu Desnoyers wrote:
> > [...]
> > > Arjan asked for something to send formatted strings to tracing buffers
> > > that are consumed by user space.  Whether internally that is done by
> > > markers, or by tracepoints converted to markers, or by tracepoints
> > > with custom ftrace_printf-y code, is indistinguishable to the user.
> > > 
> > > Can you be specific in what way any of that is exposing an "API
> > > directly to userspace"?
> > 
> > The tracepoint declaration is linked to the kernel code that is meant to
> > be traced. Given this code will change over time, it will be more
> > difficult to perform those changes if it is in any way coupled with
> > format strings exported to userspace via traced.  [...]
> 
> The userspace interface to all the various tracing widgets consists of
> the textual formatted trace data stream.

Oh ? Really ? I thought a binary data stream wasn't out of the question ?
Actually, having both ascii and binary output seems like a good way to
do it.

> ** IF ** these streams are
> to represent a long-term interface, can you elaborate why you believe
> it would be harder to generate identical text in the future with
> markers rather than another technique with more internal layers?  Can
> you work out an example?  
> 

Hum.. I never said it would be harder to generate the trace data. I said
it would be harder for kernel developers to change kernel code because
they would have to change (and understand the usefulness down to the
analysis tools) all the subtile tracepoint fields exported to userspace
tools. I am not willing to push tracepoints in the kernel as a
supplementary maintainance burden for kernel developers. With the format
string identifying subfield, this burden will fall on the kernel
developers. If we put the field selection in a callback sitting in a
different module, well, it won't compile for as long as nobody think
it's important enough to be fixed according to new in-kernel APIs, but
it won't break the standard kernel build, and this is a _must_.

> (BTW, is "traced" a typo?)
> 

Yep, I should have written "via a tracer".

> And as to that ** IF **: is there actually consensus that the format
> of tracing data generated by e.g.  ftrace engines are supposed to be
> preserved into the future versions, just as if they were a user-space
> interface like /proc files?  (That's certainly not my impression.)
> 

We aim at having a standardized buffer format at some point, and expect
the consumer tools to be shipped with the kernel tree for most part.
We also plan to put a version number on the trace buffer. I am merely
relating the discussions that led to Steven Rostedt unified trace buffer
mechanism. (I do not say it actually does everything that was agreed on,
but we have to start somewhere)

If I can get my head out of the sand and start posting the
implementations I have, we'll have more concrete stuff to discuss about
:) Only two things left on my 30-ish things long todo list.. almost
there ;)

Mathieu

-- 
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68

  parent reply	other threads:[~2008-11-07  5:12 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-11-05 17:49 [PATCH] ftrace: add an fsync tracer Arjan van de Ven
2008-11-05 19:43 ` Marcin Slusarz
2008-11-05 20:36   ` Arjan van de Ven
2008-11-06  7:20     ` Ingo Molnar
2008-11-06 12:55 ` Peter Zijlstra
2008-11-06 13:28   ` Frédéric Weisbecker
2008-11-06 14:06   ` Arjan van de Ven
2008-11-06 14:19     ` Peter Zijlstra
2008-11-06 14:31       ` Arjan van de Ven
2008-11-06 14:50         ` Peter Zijlstra
2008-11-06 15:01           ` Arjan van de Ven
2008-11-06 15:34             ` Steven Rostedt
2008-11-06 17:45               ` Arjan van de Ven
2008-11-06 20:19                 ` Frank Ch. Eigler
2008-11-06 20:29                   ` Peter Zijlstra
2008-11-06 20:57                     ` Frank Ch. Eigler
2008-11-06 21:18                     ` Jason Baron
2008-11-06 21:53                     ` Mathieu Desnoyers
2008-11-06 22:14                       ` Frank Ch. Eigler
2008-11-06 22:25                         ` Mathieu Desnoyers
2008-11-06 23:25                           ` Frank Ch. Eigler
2008-11-07  4:25                             ` Arjan van de Ven
2008-11-07  5:12                             ` Mathieu Desnoyers [this message]
2008-11-06 21:13                   ` Arjan van de Ven
2008-11-06 21:20                     ` Frank Ch. Eigler
2008-11-06 14:14   ` Arjan van de Ven

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=20081107051214.GA30350@Krystal \
    --to=mathieu.desnoyers@polymtl.ca \
    --cc=alan@redhat.com \
    --cc=arjan@infradead.org \
    --cc=fche@redhat.com \
    --cc=jbaron@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.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 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.