/base/hiviewdfx/faultloggerd/test/unittest/unwind/ |
H A D | unwinder_test.cpp | 31 #include "unwinder.h" 34 #include <unwind.h> // GCC's internal unwinder, part of libgcc 61 * @tc.desc: test unwinder GetStackRange interface in pid == tid 67 auto unwinder = std::make_shared<Unwinder>(); in HWTEST_F() local 71 ASSERT_TRUE(unwinder->GetStackRange(stackBottom, stackTop)); in HWTEST_F() 81 * @tc.desc: test unwinder GetStackRange interface in pid != tid 87 auto unwinder = std::make_shared<Unwinder>(); in HWTEST_F() local 93 std::thread th([unwinder, &stackBottom, &stackTop, &result] { in HWTEST_F() 94 result = unwinder->GetStackRange(stackBottom, stackTop); in HWTEST_F() 105 * @tc.desc: test unwinder loca 111 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 139 std::shared_ptr<Unwinder> unwinder = nullptr; HWTEST_F() local 177 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 199 auto unwinder = std::make_shared<Unwinder>(child); HWTEST_F() local 236 std::shared_ptr<Unwinder> unwinder = nullptr; HWTEST_F() local 294 auto unwinder = std::make_shared<Unwinder>(child); HWTEST_F() local 325 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 360 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 385 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 418 auto unwinder = std::make_shared<Unwinder>(child); HWTEST_F() local 449 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 491 auto unwinder = std::make_shared<Unwinder>(child); HWTEST_F() local 520 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 571 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 609 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 667 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 700 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 728 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 777 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 811 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 859 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 881 auto unwinder = std::make_shared<Unwinder>(initPid); HWTEST_F() local 905 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 925 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 950 auto unwinder = std::make_shared<Unwinder>(getpid()); HWTEST_F() local [all...] |
H A D | unwinder_pac_test.cpp | 25 #include "unwinder.h" 47 * @tc.desc: test unwinder unwind interface with pac 57 auto unwinder = std::make_shared<Unwinder>(pid); in HWTEST_F() local 62 unwinder->SetRegs(regs); in HWTEST_F() 67 unwRet = unwinder->Unwind(&context); in HWTEST_F() 69 auto frames = unwinder->GetFrames(); in HWTEST_F() 85 * @tc.desc: test unwinder FpStep interface with pac 96 auto unwinder = std::make_shared<Unwinder>(pid); in HWTEST_F() local 100 unwinder->SetRegs(regs); in HWTEST_F() 104 unwRet = unwinder in HWTEST_F() [all...] |
H A D | instr_statistic_test.cpp | 27 #include "unwinder.h" 63 auto unwinder = std::make_shared<Unwinder>(pid); in HWTEST_F() local 67 unwinder->SetRegs(regs); in HWTEST_F() 73 unwRet = unwinder->Unwind(&context); in HWTEST_F() 75 auto frames = unwinder->GetFrames(); in HWTEST_F()
|
/base/hiviewdfx/faultloggerd/test/unittest/process_dump/ |
H A D | lock_parser_test.cpp | 28 #include "unwinder.h" 101 * @tc.desc: unwinder parse errorcheck lock owner 122 auto unwinder = std::make_shared<Unwinder>(true); in HWTEST_F() local 123 ASSERT_EQ(unwinder->UnwindLocalWithTid(tid), true); in HWTEST_F() 125 std::vector<uintptr_t> pcs = unwinder->GetPcs(); in HWTEST_F() 129 (void)unwinder->GetFramesByPcs(frames, pcs); in HWTEST_F() 131 unwinder->SetFrames(frames); in HWTEST_F() 134 if (!unwinder->GetLockInfo(tid, buffer.data(), sizeof(pthread_mutex_t))) { in HWTEST_F() 155 * @tc.desc: unwinder parse normal lock owner 176 auto unwinder in HWTEST_F() local 228 auto unwinder = std::make_shared<Unwinder>(true); HWTEST_F() local 267 auto unwinder = std::make_shared<Unwinder>(true); HWTEST_F() local 306 auto unwinder = std::make_shared<Unwinder>(true); HWTEST_F() local [all...] |
H A D | process_dump_test.cpp | 201 auto unwinder = std::make_shared<Unwinder>(pid); in HWTEST_F() local 206 bool ret = DfxUnwindRemote::GetInstance().UnwindProcess(request, process, unwinder); in HWTEST_F() 224 auto unwinder = std::make_shared<Unwinder>(pid); in HWTEST_F() local 227 bool ret = remote->UnwindProcess(request, nullptr, unwinder, 0); in HWTEST_F() 229 ret = remote->UnwindProcess(request, process, unwinder, 0); in HWTEST_F() 233 ret = remote->UnwindProcess(request, process, unwinder, 0); in HWTEST_F() 291 auto unwinder = std::make_shared<Unwinder>(pid); in HWTEST_F() local 292 DfxUnwindAsyncThread asyncThread1(thread, unwinder, 0); in HWTEST_F() 296 DfxUnwindAsyncThread asyncThread2(thread, unwinder, 1); in HWTEST_F() 301 DfxUnwindAsyncThread asyncThread3(nullptr, unwinder, in HWTEST_F() 316 auto unwinder = std::make_shared<Unwinder>(pid); HWTEST_F() local [all...] |
H A D | fault_stack_test.cpp | 84 auto unwinder = std::make_shared<Unwinder>(); in HWTEST_F() local 85 bool unwRet = unwinder->UnwindLocal(); in HWTEST_F() 89 auto frames = unwinder->GetFrames(); in HWTEST_F()
|
/base/hiviewdfx/faultloggerd/test/benchmarktest/unwinder/ |
H A D | unwind_remote_benchmark.cpp | 24 #include "unwinder.h"
74 static size_t UnwinderRemote(std::shared_ptr<Unwinder> unwinder, const pid_t tid)
in UnwinderRemote() argument 76 if (unwinder == nullptr) {
in UnwinderRemote() 79 MAYBE_UNUSED bool unwRet = unwinder->UnwindRemote(tid);
in UnwinderRemote() 80 auto frames = unwinder->GetFrames();
in UnwinderRemote() 85 static size_t UnwinderRemoteFp(std::shared_ptr<Unwinder> unwinder, const pid_t tid)
in UnwinderRemoteFp() argument 87 if (unwinder == nullptr) {
in UnwinderRemoteFp() 91 unwinder->SetRegs(regs);
in UnwinderRemoteFp() 94 unwinder->EnableFpCheckMapExec(false);
in UnwinderRemoteFp() 95 unwinder in UnwinderRemoteFp() 101 GetUnwinder(pid_t pid, void* data, std::shared_ptr<Unwinder>& unwinder, bool& isFp) GetUnwinder() argument 138 std::shared_ptr<Unwinder> unwinder = nullptr; Run() local [all...] |
H A D | unwind_local_benchmark.cpp | 25 #include "unwinder.h"
39 std::shared_ptr<Unwinder> unwinder = nullptr;
member 70 static bool GetUnwinder(void* data, std::shared_ptr<Unwinder>& unwinder, bool& isFp)
in GetUnwinder() argument 73 if ((dataPtr != nullptr) && (dataPtr->unwinder != nullptr)) {
in GetUnwinder() 74 unwinder = dataPtr->unwinder;
in GetUnwinder() 75 unwinder->EnableFillFrames(dataPtr->isFillFrames);
in GetUnwinder() 76 unwinder->EnableUnwindCache(dataPtr->isCache);
in GetUnwinder() 80 DFXLOGE("Failed to get unwinder");
in GetUnwinder() 86 std::shared_ptr<Unwinder> unwinder in UnwinderLocal() local [all...] |
H A D | unwind_local_tid_benchmark.cpp | 23 #include "unwinder.h"
97 auto unwinder = std::make_shared<Unwinder>(false);
in BenchmarkUnwinderLocalWithTid() local 99 auto unwinder = std::make_shared<Unwinder>();
in BenchmarkUnwinderLocalWithTid() local 101 unwinder->EnableFillFrames(false);
in BenchmarkUnwinderLocalWithTid() 104 if (!unwinder->UnwindLocalWithTid(tid.load())) {
in BenchmarkUnwinderLocalWithTid() 107 auto unwSize = unwinder->GetPcs().size();
in BenchmarkUnwinderLocalWithTid()
|
/base/hiviewdfx/faultloggerd/tools/process_dump/ |
H A D | dfx_unwind_remote.cpp | 81 std::shared_ptr<Unwinder> unwinder, pid_t vmPid) in UnwindProcess() 85 if (process == nullptr || unwinder == nullptr) { in UnwindProcess() 86 DFXLOGW("%{public}s::process or unwinder is not initialized.", __func__); in UnwindProcess() 92 int unwCnt = UnwindKeyThread(request, process, unwinder, vmPid) ? 1 : 0; in UnwindProcess() 96 unwCnt += UnwindOtherThread(process, unwinder, vmPid); in UnwindProcess() 104 Printer::PrintThreadFaultStackByConfig(process, process->vmThread_, unwinder); in UnwindProcess() 112 Printer::PrintThreadFaultStackByConfig(process, process->keyThread_, unwinder); in UnwindProcess() 116 Printer::PrintProcessMapsByConfig(unwinder->GetMaps()); in UnwindProcess() 128 std::shared_ptr<Unwinder> unwinder, pid_t vmPid) in UnwindKeyThread() 143 unwinder in UnwindKeyThread() 80 UnwindProcess(std::shared_ptr<ProcessDumpRequest> request, std::shared_ptr<DfxProcess> process, std::shared_ptr<Unwinder> unwinder, pid_t vmPid) UnwindProcess() argument 127 UnwindKeyThread(std::shared_ptr<ProcessDumpRequest> request, std::shared_ptr<DfxProcess> process, std::shared_ptr<Unwinder> unwinder, pid_t vmPid) UnwindKeyThread() argument 177 UnwindOtherThread(std::shared_ptr<DfxProcess> process, std::shared_ptr<Unwinder> unwinder, pid_t vmPid) UnwindOtherThread() argument [all...] |
H A D | dfx_unwind_remote.h | 30 #include "unwinder.h" 40 std::shared_ptr<Unwinder> unwinder, pid_t vmPid = 0); 46 std::shared_ptr<Unwinder> unwinder, pid_t vmPid = 0); 47 int UnwindOtherThread(std::shared_ptr<DfxProcess> process, std::shared_ptr<Unwinder> unwinder,
|
H A D | printer.h | 30 #include "unwinder.h" 37 std::shared_ptr<Unwinder> unwinder); 45 std::shared_ptr<Unwinder> unwinder); 50 std::shared_ptr<Unwinder> unwinder, std::string& reasonInfo);
|
H A D | dfx_unwind_async_thread.h | 25 #include "unwinder.h" 31 DfxUnwindAsyncThread(std::shared_ptr<DfxThread> thread, std::shared_ptr<Unwinder> unwinder, uint64_t stackId) in DfxUnwindAsyncThread() argument 32 : thread_(thread), unwinder_(unwinder), stackId_(stackId) {} in DfxUnwindAsyncThread()
|
H A D | lock_parser.cpp | 36 bool LockParser::ParseLockInfo(std::shared_ptr<Unwinder> unwinder, int32_t vmPid, int32_t tid)
in ParseLockInfo() argument 40 if (unwinder->GetLockInfo(vmPid, buffer.data(), sizeof(pthread_mutex_t))) {
in ParseLockInfo()
|
H A D | printer.cpp | 45 std::shared_ptr<Unwinder> unwinder) in PrintDumpHeader() 72 PrintReason(request, process, unwinder, reasonInfo); in PrintDumpHeader() 112 std::shared_ptr<Unwinder> unwinder, std::string& reasonInfo) in PrintReason() 132 if (unwinder == nullptr || keyThreadEmpty) { in PrintReason() 133 DFXLOGW("%{public}s is nullptr", unwinder == nullptr ? "unwinder" : "keyThread_"); in PrintReason() 136 std::shared_ptr<DfxMaps> maps = unwinder->GetMaps(); in PrintReason() 277 std::shared_ptr<Unwinder> unwinder) in PrintThreadFaultStackByConfig() 292 faultStack->CollectRegistersBlock(process->regs_, unwinder->GetMaps()); in PrintThreadFaultStackByConfig() 44 PrintDumpHeader(std::shared_ptr<ProcessDumpRequest> request, std::shared_ptr<DfxProcess> process, std::shared_ptr<Unwinder> unwinder) PrintDumpHeader() argument 111 PrintReason(std::shared_ptr<ProcessDumpRequest> request, std::shared_ptr<DfxProcess> process, std::shared_ptr<Unwinder> unwinder, std::string& reasonInfo) PrintReason() argument 276 PrintThreadFaultStackByConfig(std::shared_ptr<DfxProcess> process, std::shared_ptr<DfxThread> thread, std::shared_ptr<Unwinder> unwinder) PrintThreadFaultStackByConfig() argument
|
H A D | lock_parser.h | 18 #include "unwinder.h"
25 static bool ParseLockInfo(std::shared_ptr<Unwinder> unwinder, int32_t vmPid, int32_t tid);
|
/base/hiviewdfx/faultloggerd/interfaces/innerkits/backtrace/ |
H A D | backtrace_local.cpp | 32 #include "unwinder.h" 57 std::shared_ptr<Unwinder> unwinder = nullptr; in GetBacktraceFramesByTid() local 60 unwinder = std::make_shared<Unwinder>(false); in GetBacktraceFramesByTid() 63 if (unwinder == nullptr) { in GetBacktraceFramesByTid() 64 unwinder = std::make_shared<Unwinder>(); in GetBacktraceFramesByTid() 66 BacktraceLocalThread thread(tid, unwinder); in GetBacktraceFramesByTid() 148 auto unwinder = std::make_shared<Unwinder>(); in GetProcessStacktrace() local 154 BacktraceLocalThread thread(tid, unwinder); in GetProcessStacktrace()
|
H A D | backtrace_local_thread.cpp | 33 BacktraceLocalThread::BacktraceLocalThread(int32_t tid, std::shared_ptr<Unwinder> unwinder) in BacktraceLocalThread() argument 34 : tid_(tid), unwinder_(unwinder) in BacktraceLocalThread()
|
H A D | backtrace_local_thread.h | 24 #include "unwinder.h" 32 explicit BacktraceLocalThread(int32_t tid, std::shared_ptr<Unwinder> unwinder);
|
/base/hiviewdfx/faultloggerd/test/benchmarktest/unwindstack/ |
H A D | unwind_remote_benchmark.cpp | 107 static size_t UnwindRemote(unwindstack::Unwinder unwinder, MAYBE_UNUSED UnwindData* dataPtr)
110 unwinder.SetResolveNames(dataPtr->isFillFrames);
112 unwinder.Unwind();
113 auto unwSize = unwinder.NumFrames();
117 auto str = unwinder.FormatFrame(i);
153 unwindstack::Unwinder unwinder(MAX_FRAMES, &maps, regs.get(), processMemory);
154 auto unwSize = UnwindRemote(unwinder, dataPtr);
|
H A D | unwind_local_benchmark.cpp | 77 unwindstack::Unwinder unwinder(MAX_FRAMES, dataPtr->maps, regs.get(), dataPtr->processMemory);
in UnwindLocal() 78 unwinder.SetResolveNames(dataPtr->isFillFrames);
in UnwindLocal() 79 unwinder.Unwind();
in UnwindLocal() 80 auto unwSize = unwinder.NumFrames();
in UnwindLocal() 84 auto str = unwinder.FormatFrame(i);
in UnwindLocal()
|
/base/hiviewdfx/hicollie/frameworks/native/thread_sampler/ |
H A D | thread_sampler_utils.cpp | 75 void DoUnwind(const std::shared_ptr<Unwinder>& unwinder, UnwindInfo& unwindInfo) in DoUnwind() argument 83 unwinder->SetRegs(regs); in DoUnwind() 84 unwinder->EnableFillFrames(false); in DoUnwind() 85 unwinder->Unwind(&unwindInfo); in DoUnwind()
|
/base/hiviewdfx/faultloggerd/test/unittest/backtrace/ |
H A D | backtrace_local_test.cpp | 105 auto unwinder = std::make_shared<Unwinder>(); in HWTEST_F() local 106 BacktraceLocalThread thread(BACKTRACE_CURRENT_THREAD, unwinder); in HWTEST_F() 147 auto unwinder = std::make_shared<Unwinder>(); in HWTEST_F() local 148 BacktraceLocalThread thread(g_tid, unwinder); in HWTEST_F() 261 auto unwinder = std::make_shared<Unwinder>(); in HWTEST_F() local 262 BacktraceLocalThread oldthread(BACKTRACE_CURRENT_THREAD, unwinder); in HWTEST_F() 269 BacktraceLocalThread newthread(BACKTRACE_CURRENT_THREAD, unwinder); in HWTEST_F() 290 auto unwinder = std::make_shared<Unwinder>(); in HWTEST_F() local 291 BacktraceLocalThread oldthread(BACKTRACE_CURRENT_THREAD, unwinder); in HWTEST_F() 298 BacktraceLocalThread newthread(BACKTRACE_CURRENT_THREAD, unwinder); in HWTEST_F() 317 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 411 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local 443 auto unwinder = std::make_shared<Unwinder>(); HWTEST_F() local [all...] |
/base/hiviewdfx/hicollie/frameworks/native/thread_sampler/include/ |
H A D | sample_stack_printer.h | 22 #include "unwinder.h"
47 SampleStackPrinter(std::shared_ptr<Unwinder> unwinder, std::shared_ptr<DfxMaps> maps) : unwinder_(unwinder),
in SampleStackPrinter() argument
|
H A D | thread_sampler_utils.h | 43 void DoUnwind(const std::shared_ptr<Unwinder>& unwinder, UnwindInfo& unwindInfo);
|