Hi, I'm trying to clean up the way our stapdyn mutator deals with signals in the mutatee, and I've run into a couple weird issues.
First, sometimes BPatch_process::isTerminated() returns true, but then BPatch_process::terminationStatus() returns NoExit. I can reproduce this easily by sending SIGTERM from a shell to the mutatee, then my mutator sees the terminated/NoExit state. Of course in this case, I expect ExitedViaSignal. Is there synchronization or something I should do to get that proper exit status? Second, mutatee SIGINTs are getting squashed altogether. I discovered this is because unix.C PCEventHandler::shouldStopForSignal() is apparently treating SIGINT the same as SIGSTOP. This sets shouldForwardSignal=false in PCEventHandler::handleSignal(), so it doesn't get delivered. This was added in a huge commit, 785d4029, which doesn't help me figure out why SIGINT should be treated this way. I'd appreciate any input on these two issues. Thanks, Josh _______________________________________________ Dyninst-api mailing list [email protected] https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api
