This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: [PATCH] Linux Kernel Markers
- From: Satoshi Oshima <soshima at redhat dot com>
- To: Mathieu Desnoyers <compudj at krystal dot dyndns dot org>
- Cc: Vara Prasad <prasadav at us dot ibm dot com>, Martin Bligh <mbligh at google dot com>, prasanna at in dot ibm dot com, Andrew Morton <akpm at osdl dot org>, "Frank Ch. Eigler" <fche at redhat dot com>, Ingo Molnar <mingo at elte dot hu>, Paul Mundt <lethal at linux-sh dot org>, linux-kernel <linux-kernel at vger dot kernel dot org>, Jes Sorensen <jes at sgi dot com>, Tom Zanussi <zanussi at us dot ibm dot com>, Richard J Moore <richardj_moore at uk dot ibm dot com>, Michel Dagenais <michel dot dagenais at polymtl dot ca>, Christoph Hellwig <hch at infradead dot org>, Greg Kroah-Hartman <gregkh at suse dot de>, Thomas Gleixner <tglx at linutronix dot de>, William Cohen <wcohen at redhat dot com>, ltt-dev at shafik dot org, systemtap at sources dot redhat dot com, Alan Cox <alan at lxorguk dot ukuu dot org dot uk>
- Date: Tue, 19 Sep 2006 18:27:35 -0400
- Subject: Re: [PATCH] Linux Kernel Markers
- References: <20060918234502.GA197@Krystal> <20060919081124.GA30394@elte.hu> <451008AC.6030006@google.com> <20060919154612.GU3951@redhat.com> <4510151B.5070304@google.com> <20060919093935.4ddcefc3.akpm@osdl.org> <45101DBA.7000901@google.com> <20060919063821.GB23836@in.ibm.com> <45102641.7000101@google.com> <4510413F.2030200@us.ibm.com> <20060919191652.GC30556@Krystal>
Mathieu Desnoyers wrote:
> * Vara Prasad (prasadav@us.ibm.com) wrote:
>> Martin Bligh wrote:
>>
>>> [...]
>>> Depends what we're trying to fix. I was trying to fix two things:
>>>
>>> 1. Flexibility - kprobes seem unable to access all local variables etc
>>> easily, and go anywhere inside the function. Plus keeping low overhead
>>> for doing things like keeping counters in a function (see previous
>>> example I mentioned for counting pages in shrink_list).
>>>
>> Using tools like systemtap on can consult DWARF information and put
>> probes in the middle of the function and access local variables as well,
>> that is not the real problem. The issue here is compiler doesn't seem to
>> generate required DWARF information in some cases due to optimizations.
>> The other related problem is when there exists debug information, the
>> way to specify the breakpoint location is using line number which is not
>> maintainable, having a marker solves this problem as well. Your proposal
>> still doesn't solve the need for markers if i understood correctly.
>>
>
> His implementation makes a heavy use of a marker mechanism : this is exactly
> what permits to create the instrumented objects from the same source code, but
> with different #defines.
Djprobes don't depend on markers. Actually, markers help to find the
safe place to probe, but they are not necessary. At least, instructions
that are more than 4 byte are probable.
As Vara pointed out, we are developing the tools that find the
safe place for djprobes.
Satoshi OSHIMA