Weirdness: is print_stack() supposed to work with ubacktrace() data?

Alain Kalker miki@dds.nl
Tue Nov 20 01:15:00 GMT 2012


Op 20-11-12 01:47, Alain Kalker schreef:
> Op di 20 nov 2012 01:37:42 CET, Alain Kalker schreef:
>> Let's suppose another process, running after the first process exits,
>> but before the 'end' probe hits, Let's say this process has PC
>> addresses on its stack which just happen to be the same as some
>> addresses of the first process.
>> Wouldn't 'print_stack()' then just (erroneously) list whatever symbols
>> were found for the previous process?
Self-answering my second question: yes, but my use of print_ustack is 
wrong. The docs do state that its argument should be the backtrace of 
the _current_ task. Better to use something like 'ubt[pid(), 
ubacktrace()] <<< 1', and filter out the backtraces where "pid == 
target()" later.



More information about the Systemtap mailing list