This is the mail archive of the mailing list for the systemtap project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: missing entrypc dwarf line record

Stone, Joshua I wrote:

On Friday, September 15, 2006 10:47 AM, Frank Ch. Eigler wrote:

Hi -

On Fri, Sep 15, 2006 at 11:16:09AM -0700, David Wilder wrote:


jprobe_return is black-listed but it is not helping.. [...]

Humm ok. I am seeing the problem in semok/twenty.stp run by make all
check. The test is "probe kernel.function("*") {}", Is there a way
to use "*" and exclude a function?

The problem here is that while some of these routines are blacklisted
in the kernel (kprobe_register will fail), they are not blacklisted in
the translator.  We need to teach the translator to look for the
kernel-side blacklist info too (the .kprobes section naming methinks),
and treat it similarly to the .init/.exit special cases already
present in tapsets.cxx.

This way, function("*") will quietly exclude the blacklisted

- FChE

Indeed this would be nice -- see bug #2639.

In the mean time, we can add additional functions to the static
blacklist in the translator.  See dwarf_query::build_blacklist().  It's
unfortunate that we have to try to maintain this, but I suppose it's
better than nothing.  And, as you mention, kprobe_register will block
these too, so this is really just a matter of *when* the error is


I took check for a null entrypc out to make my test run. In my case since the function is blacklisted it gets kicked out later so it is not a problem. But we still need the check. As Joshua's suggested moving the check into dwarf_query::blacklisted_p() sounds like the right thing to do.

David Wilder
IBM Linux Technology Center
Beaverton, Oregon, USA

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]