This is the mail archive of the systemtap@sources.redhat.com 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: Output Redesign in SystemTap Runtime


On Tue, 2005-04-26 at 15:20 -0400, Frank Ch. Eigler wrote: 
> Hi -
> 
> > > More generally, backtrace data can instead be saved in ordinary
> > > systemtap variables [...]
> > > By that time, the exact origins ("this came from
> > > a stack") would be lost, in the absence of heroic measures.
> > 
> > Not really.  "<stack> 0xf0001234 ...  </stack>" gets saved as a string
> > [...]
> 
> OK, that's the sort of "heroic measure" I was talking about.  So now
> we have a string that has some self-descriptive content markup.

I don't understand what is heroic about it. Or what the problem is. Do
you have an example? Why are you saving a stack in a string?  Probably
just to save in a map, so that's just data and who cares if it has tags
in it? When it gets printed they get removed.

For saving a stack to a string, I can see a couple of possibilities.
1. I want a kernel trace as a bunch of numbers.  OK. Just call
_stp_sprint_stack() with verbose = 0.

2. I want symbolic trace. OK, call _stp_sprint_stack with verbose > 0
and you get <stack> tag in your string at runtime. If it gets printed,
then the tag is removed when symbolic lookups are done.

3. I want symbolic trace right now in my string, even if it is slow.
OK, could be done, but is this really necessary?

Martin



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