Hi Manfred, > DTrace features the built-in variable caller (from chapter 3 of the Solaris > Dynamic Tracing Guide: uintptr_t caller - The program counter location of the > current thread just before entering the current probe). > > I tried to use caller (trace(caller)) in a script of mine and got the > following error message: > > dtrace: error on enabled probe ID 92 (ID 67898: > pid14066:charmm:MPI_Reduce:entry): invalid kernel access in action #26 at DIF > offset 0 > > I'm tracing a user process (via pid provider), so I would expect DTrace to > allow access to this information. Could it be, that caller generally requires > dtrace_kernel privileges no matter what function is traced? Unfortunately, > neither the Solaris Dynamic Tracing Guide nor the DTrace Wikit mentions any > privilege requirements for the different DTrace built-in variables.
If you want to see who is calling MPI_Reduce() then you need to use the 'ucaller' built-in (which I think should be in U5). Unfortunately this doesn't appear to be in the docs - sorry about that. You can feel free to add it to the wiki yourself or I'll try and do it shortly. Jon. _______________________________________________ dtrace-discuss mailing list [email protected]
