From: "Martin J. Bligh" <mbligh@mbligh.org>
To: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Paul Mundt <lethal@linux-sh.org>,
Karim Yaghmour <karim@opersys.com>, Jes Sorensen <jes@sgi.com>,
Roman Zippel <zippel@linux-m68k.org>, Ingo Molnar <mingo@elte.hu>,
Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>,
linux-kernel@vger.kernel.org,
Christoph Hellwig <hch@infradead.org>,
Andrew Morton <akpm@osdl.org>, Ingo Molnar <mingo@redhat.com>,
Greg Kroah-Hartman <gregkh@suse.de>,
Thomas Gleixner <tglx@linutronix.de>,
Tom Zanussi <zanussi@us.ibm.com>,
ltt-dev@shafik.org, Michel Dagenais <michel.dagenais@polymtl.ca>
Subject: Re: [PATCH 0/11] LTTng-core (basic tracing infrastructure) 0.5.108
Date: Fri, 15 Sep 2006 08:47:04 -0700 [thread overview]
Message-ID: <450ACAF8.6020107@mbligh.org> (raw)
In-Reply-To: <1158333723.29932.88.camel@localhost.localdomain>
Alan Cox wrote:
> Ar Gwe, 2006-09-15 am 07:46 -0700, ysgrifennodd Martin J. Bligh:
>> Moreover, subsystem experts know what needs to be traced in order to
>> give useful information, and the users may not. It's a damned sight
>> easier for them to say "oh, please turn on tracing for VM events
>> and send me the output" than custom-construct a set of probes for
>> that user, and send them off. There's a barrier to entry that just
>> won't happen there.
>
> That has nothing to do with the static or dynamic probe question.
> Scriptable dynamic probes do everything your static probes do and more.
No. The point is that they're not *there* and have to be modified
for every kernel version. And do you mean with or without the markers
in the code to tell the dynamic probes where to hook in, and what data
to fetch? that makes a huge difference.
Suppose, as a very real example, I want to instrument shrink_list.
There are 20 or so places where it can switch what we're doing with
a page for different reasons. Potentially we're scanning through many
thousands of pages. If I can keep counters as I go through the function,
and then do one trace entry at the end, that's fairly efficient. If I
have to create 20 separate hooks that all jump out of line, it's going
to be a lot slower. If I log a tracepoint at every damned page every
time it switches, it's going to be a nightmare.
Most things can be done with dynamic probes. Some things will require
markers in the code to tell us sustainably over time where to attatch
them. A few things (like the above) probably require some explicit
code.
>> Hell, look at all the debug printks in the kernel for example, and
>> the various small add-hoc tracing facilities. If all we do is unite
>> those, it'll still be a step forwards.
>
> Look how many there are, look how they spread, tracepoints will do the
> same.
As long as they all use the same infrastructure, that's an improvement.
>> Dynamic probes do NOT reduce maintenance, they increase it.
>
> Thats a logical fallacy to begin with. A dynamic probe can probe
> anything a static probe can. So a static probe can be implemented with a
> dynamic probe.
In the absence of the markers, I don't think that's true - there's the
maintenance of exactly where they go, plus access to local data. If you
mean with markers, then yes, that's fine. The markers + dynamic probes
seems to be a reasonable compromise between the two. Exactly what we
call that combo, static or dynamic, I don't really care ;-)
> In other words if you like static probe lists and your subsystem happens
> to be one where it is useful then you can script it with the same effect
> and send people the script.
>
> With kprobes you've got a passably good chance (ie if Distros can be
> persuaded to package the debug data) that you can say "run this
> systemtap script". With static tracepoints its "recompile your vendor
> kernel in your vendor manner with your vendor initrd and add it to the
> boot loader"
You're thinking of one situation where you can't recompile. I'm thinking
of a situation where it's trivial to recompile. Both exist, neither is
invalid. Of course, where possible, we'd like to be able to add stuff
on the fly, but it's not a panacea.
Without the markers, maintaining a usable set of dynamic probe points
that's always available for every kernel version seems infeasible.
With them, I think it'll cover 99% of the cases, and would be pretty
useful. If people agree on putting tags in there, perhaps we can
discuss things like the logging mechanism, format, and readout.
If not, I suppose we have to drag this debate out even longer.
M.
next prev parent reply other threads:[~2006-09-15 15:48 UTC|newest]
Thread overview: 284+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-14 3:38 [PATCH 0/11] LTTng-core (basic tracing infrastructure) 0.5.108 Mathieu Desnoyers
2006-09-14 11:27 ` Ingo Molnar
2006-09-14 13:40 ` Roman Zippel
2006-09-14 13:55 ` Ingo Molnar
2006-09-14 14:33 ` Roman Zippel
2006-09-14 15:26 ` Michel Dagenais
2006-09-14 17:48 ` Ingo Molnar
2006-09-15 15:04 ` Mathieu Desnoyers
2006-09-14 18:08 ` Nick Piggin
2006-09-14 18:38 ` Karim Yaghmour
2006-09-14 17:13 ` Ingo Molnar
2006-09-14 17:55 ` Roman Zippel
2006-09-14 18:15 ` Ingo Molnar
2006-09-14 18:35 ` Mathieu Desnoyers
2006-09-14 18:54 ` Karim Yaghmour
2006-09-15 9:20 ` Jes Sorensen
2006-09-15 12:38 ` Karim Yaghmour
2006-09-15 12:32 ` Jes Sorensen
2006-09-15 14:09 ` Karim Yaghmour
2006-09-15 14:30 ` Jes Sorensen
2006-09-15 15:12 ` Karim Yaghmour
2006-09-16 10:41 ` Jes Sorensen
2006-09-16 15:28 ` Karim Yaghmour
2006-09-18 8:57 ` Jes Sorensen
2006-09-18 14:48 ` Ingo Molnar
2006-09-18 15:37 ` Karim Yaghmour
2006-09-15 13:20 ` Paul Mundt
2006-09-15 13:41 ` Roman Zippel
2006-09-15 13:44 ` Jes Sorensen
2006-09-15 14:03 ` Roman Zippel
2006-09-15 14:37 ` Alan Cox
2006-09-15 14:34 ` Roman Zippel
2006-09-15 13:57 ` Paul Mundt
2006-09-15 14:17 ` Karim Yaghmour
2006-09-15 14:13 ` Jes Sorensen
2006-09-15 14:31 ` Karim Yaghmour
2006-09-15 14:28 ` Paul Mundt
2006-09-15 14:46 ` Martin J. Bligh
2006-09-15 15:22 ` Alan Cox
2006-09-15 15:47 ` Martin J. Bligh [this message]
2006-09-15 14:51 ` Karim Yaghmour
2006-09-15 15:00 ` Thomas Gleixner
2006-09-15 15:28 ` Karim Yaghmour
2006-09-15 18:16 ` Andrew Morton
2006-09-15 18:19 ` Ingo Molnar
2006-09-15 19:26 ` Karim Yaghmour
2006-09-15 19:43 ` Roman Zippel
2006-09-15 20:05 ` Ingo Molnar
2006-09-15 20:22 ` Mathieu Desnoyers
2006-09-15 21:08 ` Jose R. Santos
2006-09-15 21:25 ` Mathieu Desnoyers
2006-09-15 22:02 ` Jose R. Santos
2006-09-15 22:03 ` Ingo Molnar
2006-09-15 22:32 ` Karim Yaghmour
2006-09-15 22:43 ` Ingo Molnar
2006-09-15 23:33 ` Karim Yaghmour
2006-09-15 23:52 ` Ingo Molnar
2006-09-16 2:24 ` Karim Yaghmour
2006-09-15 23:53 ` Ingo Molnar
2006-09-16 2:51 ` Karim Yaghmour
2006-09-15 22:59 ` Frank Ch. Eigler
2006-09-15 23:40 ` Karim Yaghmour
2006-09-15 23:17 ` Jose R. Santos
2006-09-15 21:32 ` Ingo Molnar
2006-09-15 21:58 ` Mathieu Desnoyers
2006-09-15 22:19 ` Ingo Molnar
2006-09-15 22:45 ` Karim Yaghmour
2006-09-16 9:59 ` Jes Sorensen
2006-09-16 17:24 ` Mathieu Desnoyers
2006-09-16 17:35 ` Ingo Molnar
2006-09-16 17:56 ` Mathieu Desnoyers
2006-09-16 19:10 ` Ingo Molnar
2006-09-16 19:37 ` Ingo Molnar
2006-09-16 20:29 ` [patch] kprobes: optimize branch placement Ingo Molnar
2006-09-16 20:43 ` Ingo Molnar
2006-09-16 21:44 ` Karim Yaghmour
2006-09-16 22:57 ` Andrew Morton
2006-09-16 23:24 ` Ingo Molnar
2006-09-17 2:44 ` Karim Yaghmour
2006-09-17 1:59 ` Karim Yaghmour
2006-09-17 12:15 ` Mike Galbraith
2006-09-16 22:56 ` Andrew Morton
2006-09-16 23:30 ` Ingo Molnar
2006-09-18 13:52 ` Ananth N Mavinakayanahalli
2006-09-16 22:55 ` Andrew Morton
2006-09-17 10:13 ` [PATCH 0/11] LTTng-core (basic tracing infrastructure) 0.5.108 Frederik Deweerdt
2006-09-17 14:00 ` Ingo Molnar
2006-09-16 19:51 ` Karim Yaghmour
2006-09-16 23:40 ` Ingo Molnar
2006-09-17 5:33 ` Mathieu Desnoyers
2006-09-16 18:11 ` Karim Yaghmour
2006-09-16 17:44 ` Ingo Molnar
2006-09-16 18:15 ` Karim Yaghmour
2006-09-18 8:18 ` Jes Sorensen
2006-09-16 17:55 ` Karim Yaghmour
2006-09-18 8:21 ` Jes Sorensen
2006-09-18 8:33 ` Jes Sorensen
2006-09-18 15:01 ` Mathieu Desnoyers
2006-09-16 17:30 ` Mathieu Desnoyers
2006-09-18 8:15 ` Jes Sorensen
2006-09-18 14:53 ` Mathieu Desnoyers
2006-09-18 15:17 ` Ingo Molnar
2006-09-18 16:54 ` Mathieu Desnoyers
2006-09-15 21:12 ` Roman Zippel
2006-09-15 21:08 ` Ingo Molnar
2006-09-15 20:13 ` Andrew Morton
2006-09-15 21:49 ` Jose R. Santos
2006-09-16 10:19 ` Jes Sorensen
2006-09-16 16:05 ` Karim Yaghmour
2006-09-17 4:54 ` Ganesan Rajagopal
2006-09-18 8:13 ` Jes Sorensen
2006-09-18 14:46 ` Mathieu Desnoyers
2006-09-18 17:06 ` Martin Bligh
2006-09-20 14:17 ` Jes Sorensen
2006-09-15 19:35 ` Thomas Gleixner
2006-09-15 19:40 ` Ingo Molnar
2006-09-15 19:56 ` Karim Yaghmour
2006-09-15 20:23 ` Thomas Gleixner
2006-09-15 20:40 ` Roman Zippel
2006-09-15 20:48 ` Ingo Molnar
2006-09-15 21:17 ` Karim Yaghmour
2006-09-15 21:15 ` Ingo Molnar
2006-09-15 21:56 ` Karim Yaghmour
2006-09-15 21:27 ` Roman Zippel
2006-09-15 21:51 ` Ingo Molnar
2006-09-15 22:15 ` Karim Yaghmour
2006-09-15 22:53 ` Roman Zippel
2006-09-15 23:14 ` Ingo Molnar
2006-09-15 23:49 ` Nicholas Miell
2006-09-15 23:57 ` Ingo Molnar
2006-09-16 0:41 ` Nicholas Miell
2006-09-16 0:31 ` Roman Zippel
2006-09-16 8:20 ` Ingo Molnar
2006-09-16 8:21 ` Ingo Molnar
2006-09-16 8:21 ` Ingo Molnar
2006-09-16 8:22 ` Ingo Molnar
2006-09-16 19:58 ` Roman Zippel
2006-09-16 22:50 ` Ingo Molnar
2006-09-16 23:00 ` Ingo Molnar
2006-09-17 1:15 ` Roman Zippel
2006-09-17 8:42 ` Ingo Molnar
2006-09-17 15:16 ` Roman Zippel
2006-09-17 15:25 ` Ingo Molnar
2006-09-17 16:02 ` Roman Zippel
2006-09-17 16:45 ` Ingo Molnar
2006-09-17 16:59 ` Nick Piggin
2006-09-17 17:26 ` Roman Zippel
2006-09-17 17:56 ` Nick Piggin
2006-09-17 18:59 ` Roman Zippel
2006-09-17 21:23 ` Ingo Molnar
2006-09-17 21:52 ` Roman Zippel
2006-09-17 22:27 ` Ingo Molnar
2006-09-17 21:40 ` Ingo Molnar
2006-09-18 8:43 ` Jes Sorensen
2006-09-17 21:32 ` Ingo Molnar
2006-09-17 19:23 ` Ingo Molnar
2006-09-17 19:45 ` Roman Zippel
2006-09-17 20:56 ` Ingo Molnar
2006-09-17 21:36 ` Roman Zippel
2006-09-17 22:13 ` Ingo Molnar
2006-09-16 23:14 ` Ingo Molnar
2006-09-17 14:19 ` Frank Ch. Eigler
2006-09-17 15:31 ` Ingo Molnar
2006-09-17 17:15 ` Mathieu Desnoyers
[not found] ` <y0mu036eglz.fsf@ton.toronto.redhat.com>
2006-09-17 15:00 ` Ingo Molnar
2006-09-16 8:23 ` Ingo Molnar
2006-09-16 8:23 ` Ingo Molnar
2006-09-16 8:23 ` Ingo Molnar
2006-09-15 21:05 ` Karim Yaghmour
2006-09-15 21:17 ` Thomas Gleixner
2006-09-15 21:31 ` Karim Yaghmour
2006-09-15 20:00 ` Mathieu Desnoyers
2006-09-15 20:27 ` Jose R. Santos
2006-09-15 20:37 ` Alan Cox
2006-09-15 20:26 ` Mathieu Desnoyers
2006-09-15 20:51 ` Karim Yaghmour
2006-09-17 17:53 ` Mathieu Desnoyers
2006-09-17 19:35 ` printk instrumentation with LTTng Mathieu Desnoyers
2006-09-15 15:24 ` [PATCH 0/11] LTTng-core (basic tracing infrastructure) 0.5.108 Alan Cox
2006-09-15 15:23 ` Karim Yaghmour
2006-09-15 14:39 ` Jes Sorensen
2006-09-15 15:04 ` Karim Yaghmour
2006-09-14 19:40 ` Tim Bird
2006-09-14 20:00 ` Ingo Molnar
2006-09-14 20:46 ` Karim Yaghmour
2006-09-19 12:05 ` Christoph Hellwig
2006-09-14 21:02 ` Roman Zippel
2006-09-15 11:40 ` Alan Cox
2006-09-15 11:46 ` Roman Zippel
2006-09-15 12:38 ` Alan Cox
2006-09-15 12:39 ` Roman Zippel
2006-09-15 13:41 ` Alan Cox
2006-09-15 13:34 ` Roman Zippel
2006-09-15 14:41 ` Alan Cox
2006-09-15 14:35 ` Karim Yaghmour
2006-09-15 14:58 ` Alan Cox
2006-09-15 14:57 ` Karim Yaghmour
2006-09-15 17:49 ` Andrew Morton
2006-09-15 18:20 ` Karim Yaghmour
2006-09-15 17:01 ` Tim Bird
2006-09-15 17:08 ` Frank Ch. Eigler
2006-09-15 17:57 ` Andrew Morton
2006-09-15 18:31 ` Alan Cox
2006-09-15 18:12 ` Ingo Molnar
2006-09-15 19:10 ` Roman Zippel
2006-09-15 19:10 ` Ingo Molnar
2006-09-15 20:05 ` Thomas Gleixner
2006-09-15 20:35 ` Roman Zippel
2006-09-15 21:44 ` Tim Bird
2006-09-19 12:29 ` Christoph Hellwig
2006-09-19 13:17 ` Roman Zippel
2006-09-15 18:24 ` Frank Ch. Eigler
2006-09-15 18:23 ` Ingo Molnar
2006-09-15 18:18 ` Martin Bligh
2006-09-15 18:10 ` Jose R. Santos
2006-09-15 19:49 ` Mathieu Desnoyers
2006-09-15 20:54 ` Jose R. Santos
2006-09-15 21:42 ` Karim Yaghmour
2006-09-15 21:46 ` Mathieu Desnoyers
2006-09-19 15:05 ` Jose R. Santos
2006-09-19 15:30 ` Mathieu Desnoyers
2006-09-19 16:39 ` Jose R. Santos
2006-09-19 18:03 ` Mathieu Desnoyers
2006-09-15 17:45 ` Andrew Morton
2006-09-15 18:16 ` Karim Yaghmour
2006-09-15 19:20 ` Jose R. Santos
2006-09-15 19:59 ` Andrew Morton
2006-09-15 20:24 ` Karim Yaghmour
2006-09-15 20:25 ` Thomas Gleixner
2006-09-14 19:47 ` Roman Zippel
2006-09-14 20:24 ` Ingo Molnar
2006-09-14 20:54 ` Roman Zippel
2006-09-14 21:08 ` Daniel Walker
2006-09-14 21:30 ` Roman Zippel
2006-09-14 22:15 ` Ingo Molnar
2006-09-14 23:39 ` Roman Zippel
2006-09-14 23:43 ` Ingo Molnar
2006-09-15 0:27 ` Roman Zippel
2006-09-15 1:47 ` Mathieu Desnoyers
2006-09-15 5:47 ` Vara Prasad
2006-09-14 18:12 ` Karim Yaghmour
2006-09-14 20:25 ` Martin Bligh
2006-09-14 20:34 ` Ingo Molnar
2006-09-14 20:55 ` Martin Bligh
2006-09-14 21:31 ` Ingo Molnar
2006-09-14 22:25 ` Martin Bligh
2006-09-14 22:36 ` Ingo Molnar
2006-09-14 22:59 ` Martin Bligh
2006-09-14 23:19 ` Ingo Molnar
2006-09-15 0:19 ` Nicholas Miell
2006-09-15 1:04 ` Martin J. Bligh
2006-09-15 12:38 ` Ingo Molnar
2006-09-15 7:00 ` Vara Prasad
2006-09-15 15:37 ` Michel Dagenais
2006-09-19 12:08 ` Christoph Hellwig
2006-09-14 21:07 ` Roman Zippel
2006-09-15 9:29 ` Jes Sorensen
2006-09-14 17:51 ` Karim Yaghmour
2006-09-14 15:19 ` Mathieu Desnoyers
2006-09-14 19:39 ` Frank Ch. Eigler
2006-09-15 17:13 ` Jose R. Santos
2006-09-14 15:02 ` Mathieu Desnoyers
2006-09-14 15:14 ` Martin J. Bligh
2006-09-14 17:43 ` Ingo Molnar
2006-09-14 18:25 ` Karim Yaghmour
2006-09-14 20:03 ` Martin Bligh
2006-09-14 20:14 ` Ingo Molnar
2006-09-14 20:40 ` Martin Bligh
2006-09-14 21:05 ` Michel Dagenais
2006-09-14 22:23 ` Ingo Molnar
2006-09-14 22:46 ` Martin Bligh
2006-09-14 22:56 ` Ingo Molnar
2006-09-14 19:03 ` grundig
2006-09-14 19:21 ` Karim Yaghmour
2006-09-14 19:48 ` Frank Ch. Eigler
2006-09-15 16:32 ` Jose R. Santos
2006-09-19 11:59 ` Christoph Hellwig
-- strict thread matches above, loose matches on Subject: below --
2006-09-15 3:10 James Dickens
2006-09-15 9:17 Richard J Moore
2006-09-15 17:14 Chuck Ebbert
2006-09-15 18:32 ` Alan Cox
2006-09-16 10:46 ` Jes Sorensen
2006-09-25 15:20 Chuck Ebbert
2006-09-25 15:39 ` Ingo Molnar
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=450ACAF8.6020107@mbligh.org \
--to=mbligh@mbligh.org \
--cc=akpm@osdl.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=gregkh@suse.de \
--cc=hch@infradead.org \
--cc=jes@sgi.com \
--cc=karim@opersys.com \
--cc=lethal@linux-sh.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ltt-dev@shafik.org \
--cc=mathieu.desnoyers@polymtl.ca \
--cc=michel.dagenais@polymtl.ca \
--cc=mingo@elte.hu \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=zanussi@us.ibm.com \
--cc=zippel@linux-m68k.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