This is the mail archive of the systemtap@sourceware.org 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: too many transport failure


On 04/01/2011 12:48 PM, Frank Ch. Eigler wrote:
> 
> jistone wrote:
> 
>> [...]
>>> pp() will print a long string, thought that consumes a lot of buffer.
>>> [...]
>> You could get the raw probe address with a function like this:
>>
>>   function REG_IP:long() %{
>>     THIS->__retvalue = CONTEXT->regs ? REG_IP(CONTEXT->regs) : 0;
>>   %}
> 
> That's weird, we have uaddr() already.  There should be a raw
> version of it with that content, named something better.

Yeah, I was surprised too.  I have to wonder if we had some reason for
that omission, but I didn't find any such documentation...

>> Then, we don't have any automatic way to associate that to a pp() [...]
> 
> What about symname(REG_IP())?

Sure, this should give the same info as probefunc() would directly in
the probe, though symname can be delayed.  So long as you don't care
about the rest of pp(), like source location, then you could print each
IP at probe time and symname(ip) later to decode them.


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