This is the mail archive of the mailing list for the Archer 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: glibc with probes

> Rayson's patch is still incomplete.  I don't recall offhand whether I
> thought it still needed an incompatible change, but it definitely can't
> be used in the situation we wanted it for.

If that's still so, I think it's news to Rayson.  There have been
numerous iterations of this code.  The current code is on the branch
roland/systemtap in the glibc.git repository.  If you have more probes
you want added, or changes you want made to the ones there now, please
tell and CC both the and mailing lists.

> Roland> I've used this for some trivial manual tests of the
> Roland> setjmp/longjmp probes.
> Sounds great, thanks.  We are pretty close to being able to test this in
> gdb as well.  Sergio is hard at work on the very last piece, namely
> parsing the probe arguments.

I plan to write tests for the setjmp/longjmp probes in the systemtap
suite shortly.  But aside from that, you will be the main user of it.
So please do try to test them and let me know if it works for you.  As I
recall, the only probe argument you wanted was the (demangled) PC where
longjmp returns to.  That's the third argument in the longjmp{,_target}
probes.  For your purposes, I don't think you care between longjmp and
longjmp_target.  The difference between them is in what the backtrace
from that point looks like (longjmp's caller or setjmp's caller).

For testing purposes, note that there are two or three instances of each
probe, and four (or six, depending how you count) ways to reach one of
them.  There are longjmp, _longjmp, and siglongjmp names you can use.
Then, when you compile with -D_FORTIFY_SOURCE=1 (or =2), you are getting
to a different internal entry code path when you use any of those names.
So for thorough testing, use all three flavors in the source code, and
compile that both with and without _FORTIFY_SOURCE.  (And, of course,
do all that for both 32-bit and 64-bit x86.)


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