Hi all, Here's a problem I've wrestled with off and on... I have an aggregation keyed off ustack(), and if the process exits before dtrace stops, I get the usual hex garbage for the resulting stack frame printouts.
I know the usual way to deal with this is by stopping the process, but proc:::exit occurs too late for that to stick (see, e.g. http://www.mail-archive.com/dtrace-discuss@opensolaris.org/msg02123.html). The solution given in that older message was to snag syscall::rexit:entry, but that only catches normal exits. What is the proper way to stop a process when it receives an unhandled signal or aborts? There doesn't seem to be anything like proc:::signal-unhandled. I can't grab the app with -p, so I'm just passing the pid as a script param. Also, it's heavily multithreaded. Assertion failures can occur in multiple threads simultaneously, for example. While I can catch SIGABORT it would be nice to only catch the one that actually kills the process, along with any other unhandled signals... Any ideas? Ryan _______________________________________________ dtrace-discuss mailing list dtrace-discuss@opensolaris.org