access pointer and global variables

Stone, Joshua I joshua.i.stone@intel.com
Thu Jun 7 18:09:00 GMT 2007


David Smith wrote:
> But, we've thrown away the type information at that point, so the value 
> in your case is just a long as far as systemtap is concerned.  So, to 
> access $prev->pid you are going to have to write some code to access it. 
>   See tapset/aux_syscalls.stp for examples of functions that take a 
> pointer value and dereference fields from it.
> 
> (Alternatively you could write an entry probe yourself to cache the 
> $prev->pid value if that is all you are interested in.)

Perhaps the SystemTap language is representing $prev as a plain long, 
but the translator should know better.  Whether we cache $prev->pid or 
we cache $prev and remember how to dereference ->pid, that's just a 
design decision.  But I think it's possible for the translator to still 
handle this automatically.

Josh



More information about the Systemtap mailing list