MCPcopy Create free account
hub / github.com/async-profiler/async-profiler / crashHandler

Method crashHandler

src/profiler.cpp:642–659  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

640}
641
642void Profiler::crashHandler(int signo, siginfo_t* siginfo, void* ucontext) {
643 StackFrame frame(ucontext);
644
645 if (SafeAccess::checkFault(frame)) {
646 return;
647 }
648
649 uintptr_t pc = frame.pc();
650 if (pc >= profiler_lib_start && pc < profiler_lib_end) {
651 StackWalker::checkFault();
652 }
653
654 if (WX_MEMORY && Trap::isFaultInstruction(pc)) {
655 return;
656 }
657
658 orig_crashHandler(signo, siginfo, ucontext);
659}
660
661void Profiler::wakeupHandler(int signo) {
662 // Dummy handler for interrupting syscalls

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected