Troublesome Context Variables

Due to limitations of compiler-generated debugging data, sometimes $variables that you know exist may not be accessible to systemtap probes. You may see error messages such as ...

This is a known problem. The basic reason is that, until recently, gcc has not seriously attempted to produce accurate debugging data for highly-optimized programs. With http://gcc.gnu.org/wiki/Var_Tracking_Assignments merged in gcc 4.5, the situation is better, but still not perfect.

With an imperfect compiler, what can one do? There are several possibilities.

If you want to help debug why the location information is missing (for a nice and juicy gcc bug report for example) then try something like (lets assume we are looking for the task parameter from the nfs_read_done function in the nfs module):


Tips

None: TipContextVariables (last edited 2011-09-26 14:20:32 by FChE)