From: Christoph Hellwig <hch@infradead.org>
To: "Frank Ch. Eigler" <fche@redhat.com>
Cc: Christoph Hellwig <hch@infradead.org>,
Nick Piggin <nickpiggin@yahoo.com.au>,
William Lee Irwin III <wli@holomorphy.com>,
Andrew Morton <akpm@linux-foundation.org>,
Matt Mackall <mpm@selenic.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 0/13] maps: pagemap, kpagemap, and related cleanups
Date: Mon, 16 Apr 2007 11:59:00 +0100 [thread overview]
Message-ID: <20070416105859.GA18892@infradead.org> (raw)
In-Reply-To: <y0m6480x9df.fsf@ton.toronto.redhat.com>
On Fri, Apr 13, 2007 at 05:17:00PM -0400, Frank Ch. Eigler wrote:
> It may be worthwhile to remind people that it is easy to use systemtap
> only to the extent of automating the placement of kprobes: just to
> perform the function-name/source-file/line-number triplet to PC
> mapping. They can use embedded-C code to do all the same stuff they'd
> do with kprobes. They are not obligated to write any odd script code
> for probing logic, nor indeed use any of this really wrong runtime.
Umm, yes- as long as you write systemtap the runtime gets linked in
currently. That doesn't mean you actually use a lot of it in the end,
but the maintaince horror of actually getting all the junk code to
compile still is there.
Now the actual function-name/source-file/line-number triplet to PC is
really useful functionality, and for my tracing work I could really
use this a lot. Unfortunately systemtap doesn't have a proper layered
approach and you can't use this bit without pulling in all the
junk. If started some dward based function-name/source-file/line-number
of my own based on acme's work, but it's stalled due to more important
issues going on.
> > We could not really distribute systemtap scripts with the kernel.
> > systemtap is a bloody complicated piece of [software]
>
> I don't know if that should be treated a compliment to our team, for
> being able to work quickly on something that a full-grown kernel
> developer finds bloody complicated. Perhaps your information is
> simply outdated. Big & bloated? We have several times asked for
> specifics rather than smears - what about it?
There's a lot of stuff unneeded for basic tasks. But if you want
a detailed review you could submit your runtime bits for review and
get feedback from everyone.
> > outside the kernel tree that breaks all the time we change kernel
> > internals. [...]
>
> That's begging the question. If kernel folks are willing to maintain
> some included systemtap-related code, then by definition it would not
> break all the time.
We'll definitly need a trace transport. I currently use a hackish
kfifo rinbuffer derived from net/ipv4/tcp_probe.c, but it's showing
it's limitations. Tom promised long ago to factor our the trace
code from blktrace into generic bits, but as he doesn't deliver
I suspect I'll have to do that myself soon.
The safe dereference bits are a bit questionable, but at least worth
a try to put into the tree proper, because there's no chance they'd
be properly maintained outside.
The register dumps you do would could definitly stand some integration
with the register dumps in panic messages, and would be useful library
functions for proper C language kprobes, but that means detangling
the core from the utterly horrible systemtrap pascal string handling.
Stack backtrace handling could use some integration with the stack
tracing framework in for lockdep and fault injection and be available
more genericly for C kprobes.
With a proper tracing infrastructure we'll need the timing bits for
it aswell, which should superceed the utter mess in systemtap in
that area (I'm hoping for Matthew to come up with something there
as part of lttng)
next prev parent reply other threads:[~2007-04-16 10:59 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-04 2:43 Matt Mackall
2007-04-04 2:43 ` [PATCH 1/13] maps: Uninline some functions in the page walker Matt Mackall
2007-04-04 2:43 ` [PATCH 2/13] maps: Eliminate the pmd_walker struct " Matt Mackall
2007-04-04 2:43 ` [PATCH 3/13] maps: Remove vma from args " Matt Mackall
2007-04-04 2:43 ` [PATCH 4/13] maps: Propagate errors from callback in " Matt Mackall
2007-04-04 2:43 ` [PATCH 5/13] maps: Add callbacks for each level to " Matt Mackall
2007-04-04 2:43 ` [PATCH 6/13] maps: Move the page walker code to lib/ Matt Mackall
2007-04-04 3:51 ` Nick Piggin
2007-04-04 5:08 ` Matt Mackall
2007-04-04 5:50 ` Nick Piggin
2007-04-04 21:48 ` Matt Mackall
2007-04-05 1:32 ` Nick Piggin
2007-04-05 1:50 ` Nick Piggin
2007-04-04 2:43 ` [PATCH 7/13] maps: Simplify interdependence of /proc/pid/maps and smaps Matt Mackall
2007-04-04 2:43 ` [PATCH 8/13] maps: Move clear_refs code to task_mmu.c Matt Mackall
2007-04-04 2:43 ` [PATCH 9/13] maps: Regroup task_mmu by interface Matt Mackall
2007-04-04 2:43 ` [PATCH 10/13] maps: Make /proc/pid/smaps optional under CONFIG_EMBEDDED Matt Mackall
2007-04-04 2:43 ` [PATCH 11/13] maps: Make /proc/pid/clear_refs option " Matt Mackall
2007-04-04 6:22 ` David Rientjes
2007-04-04 2:43 ` [PATCH 12/13] maps: Add /proc/pid/pagemap interface Matt Mackall
2007-04-04 11:18 ` Nikita Danilov
2007-04-04 16:32 ` Matt Mackall
2007-04-04 18:03 ` Nikita Danilov
2007-04-04 21:59 ` Matt Mackall
2007-04-04 2:43 ` [PATCH 13/13] maps: Add /proc/kpagemap interface Matt Mackall
2007-04-12 23:10 ` [PATCH 0/13] maps: pagemap, kpagemap, and related cleanups William Lee Irwin III
2007-04-12 23:32 ` Andrew Morton
2007-04-12 23:42 ` William Lee Irwin III
2007-04-13 0:25 ` Nick Piggin
2007-04-13 0:15 ` Nick Piggin
2007-04-13 0:25 ` Matt Mackall
2007-04-13 1:01 ` Nick Piggin
2007-04-13 1:38 ` Matt Mackall
2007-04-13 2:11 ` Nick Piggin
2007-04-13 0:42 ` Andrew Morton
2007-04-13 1:14 ` Nick Piggin
2007-04-13 1:22 ` Andrew Morton
2007-04-13 1:42 ` Nick Piggin
2007-04-13 1:57 ` Matt Mackall
2007-04-13 2:21 ` Nick Piggin
2007-04-13 2:23 ` Matt Mackall
2007-04-13 2:54 ` Nick Piggin
2007-04-13 12:24 ` Ananth N Mavinakayanahalli
2007-04-14 8:13 ` Maneesh Soni
2007-04-13 1:57 ` Andrew Morton
2007-04-13 2:05 ` Matt Mackall
2007-04-13 2:29 ` Nick Piggin
2007-04-13 2:18 ` Nick Piggin
2007-04-13 2:32 ` Andrew Morton
2007-04-13 2:50 ` Nick Piggin
2007-04-13 3:10 ` Nick Piggin
2007-04-13 6:53 ` William Lee Irwin III
2007-04-13 7:05 ` Nick Piggin
2007-04-13 7:51 ` Christoph Hellwig
2007-04-13 8:03 ` Nick Piggin
2007-04-13 8:13 ` Christoph Hellwig
2007-04-13 8:25 ` Nick Piggin
2007-04-13 9:46 ` Christoph Hellwig
2007-04-13 21:17 ` Frank Ch. Eigler
2007-04-16 10:59 ` Christoph Hellwig [this message]
2007-04-16 21:36 ` Andi Kleen
2007-04-16 21:01 ` Frank Ch. Eigler
2007-04-13 8:15 ` William Lee Irwin III
2007-04-13 12:13 ` Ananth N Mavinakayanahalli
2007-04-13 12:46 ` Nick Piggin
2007-04-13 3:40 ` Nick Piggin
2007-04-13 6:55 ` William Lee Irwin III
2007-04-13 7:03 ` Nick Piggin
2007-04-13 7:08 ` William Lee Irwin III
2007-04-13 14:08 ` Theodore Tso
2007-04-16 11:00 ` Christoph Hellwig
2007-04-13 17:13 ` Matt Mackall
2007-04-13 16:24 ` Matt Mackall
2007-04-13 17:03 ` Andrew Morton
2007-04-13 17:24 ` Matt Mackall
2007-04-13 17:58 ` Andrew Morton
2007-04-13 0:15 ` Matt Mackall
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=20070416105859.GA18892@infradead.org \
--to=hch@infradead.org \
--cc=akpm@linux-foundation.org \
--cc=fche@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mpm@selenic.com \
--cc=nickpiggin@yahoo.com.au \
--cc=wli@holomorphy.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome