/base/hiviewdfx/faultloggerd/interfaces/innerkits/async_stack/ |
H A D | fp_unwinder.cpp | 33 int32_t FpUnwinder::Unwind(uintptr_t* pcs, int32_t sz, int32_t skipFrameNum) in Unwind() argument 58 if ((++index) >= skipFrameNum) { in Unwind() 60 pcs[index - skipFrameNum] = pc > 0x4 ? pc - 0x4 : pc; // adjust pc in Arm64 architecture in Unwind() 61 realSz = static_cast<uint32_t>(index - skipFrameNum + 1); in Unwind() 72 int32_t FpUnwinder::UnwindFallback(uintptr_t* pcs, int32_t sz, int32_t skipFrameNum) in UnwindFallback() argument 87 if ((++index) >= skipFrameNum) { in UnwindFallback() 88 pcs[index - skipFrameNum] = 0; in UnwindFallback() 89 realSz = index - skipFrameNum + 1; in UnwindFallback()
|
H A D | fp_unwinder.h | 37 static int32_t Unwind(uintptr_t* pcs, int32_t sz, int32_t skipFrameNum); 39 static int32_t UnwindFallback(uintptr_t* pcs, int32_t sz, int32_t skipFrameNum);
|
H A D | async_stack.cpp | 71 int32_t skipFrameNum = 2; in CollectAsyncStack() local 72 size_t sz = static_cast<size_t>(OHOS::HiviewDFX::FpUnwinder::Unwind(pcs, maxSize, skipFrameNum)); in CollectAsyncStack()
|
/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/include/ |
H A D | fp_unwinder.h | 50 size_t Unwind(uintptr_t pc, uintptr_t fp, uintptr_t* pcs, size_t maxSize, size_t skipFrameNum = 0) in Unwind() 69 if (index >= skipFrameNum) { in Unwind() 70 pcs[index - skipFrameNum] = pc; in Unwind() 82 return (index - skipFrameNum); in Unwind() 85 NO_SANITIZE size_t UnwindSafe(uintptr_t pc, uintptr_t fp, uintptr_t* pcs, size_t maxSize, size_t skipFrameNum = 0) in UnwindSafe() 98 if (index >= skipFrameNum) { in UnwindSafe() 99 pcs[index - skipFrameNum] = pc; in UnwindSafe() 114 return (index - skipFrameNum); in UnwindSafe()
|
H A D | unwinder.h | 64 size_t maxFrameNum = DEFAULT_MAX_FRAME_NUM, size_t skipFrameNum = 0); 66 size_t maxFrameNum = DEFAULT_MAX_FRAME_NUM, size_t skipFrameNum = 0); 68 size_t maxFrameNum = DEFAULT_MAX_FRAME_NUM, size_t skipFrameNum = 0); 70 size_t maxFrameNum = DEFAULT_MAX_FRAME_NUM, size_t skipFrameNum = 0); 72 size_t maxFrameNum = DEFAULT_MAX_FRAME_NUM, size_t skipFrameNum = 0); 74 size_t maxFrameNum = DEFAULT_MAX_FRAME_NUM, size_t skipFrameNum = 0);
|
/base/hiviewdfx/faultloggerd/interfaces/innerkits/backtrace/include/ |
H A D | backtrace_local.h | 37 * @param skipFrameNum the number of frames to skip 42 bool GetBacktraceFramesByTid(std::vector<DfxFrame>& frames, int32_t tid, size_t skipFrameNum, bool fast, 53 * @param skipFrameNum the number of frames to skip 61 bool GetBacktraceStringByTid(std::string& out, int32_t tid, size_t skipFrameNum, bool fast, 88 * @param skipFrameNum the number of frames to skip 93 bool GetBacktrace(std::string& out, size_t skipFrameNum, bool fast = false, 122 * @param skipFrameNum the number of frames to skip 126 const char* GetTrace(size_t skipFrameNum = 0, size_t maxFrameNums = DEFAULT_MAX_FRAME_NUM);
|
/base/hiviewdfx/faultloggerd/interfaces/innerkits/backtrace/ |
H A D | backtrace_local.cpp | 54 bool GetBacktraceFramesByTid(std::vector<DfxFrame>& frames, int32_t tid, size_t skipFrameNum, bool fast, in GetBacktraceFramesByTid() argument 67 bool ret = thread.Unwind(fast, maxFrameNums, skipFrameNum + 1); in GetBacktraceFramesByTid() 72 bool GetBacktraceStringByTid(std::string& out, int32_t tid, size_t skipFrameNum, bool fast, in GetBacktraceStringByTid() argument 76 bool ret = GetBacktraceFramesByTid(frames, tid, skipFrameNum + 1, fast, maxFrameNums); in GetBacktraceStringByTid() 123 bool GetBacktrace(std::string& out, size_t skipFrameNum, bool fast, size_t maxFrameNums) in GetBacktrace() argument 126 bool ret = GetBacktraceStringByTid(out, BACKTRACE_CURRENT_THREAD, skipFrameNum + 1, fast, maxFrameNums, false); in GetBacktrace() 136 const char* GetTrace(size_t skipFrameNum, size_t maxFrameNums) in GetTrace() argument 140 if (!GetBacktrace(trace, skipFrameNum, false, maxFrameNums)) { in GetTrace()
|
H A D | backtrace_local_thread.cpp | 44 bool BacktraceLocalThread::Unwind(bool fast, size_t maxFrameNum, size_t skipFrameNum) in Unwind() argument 55 ret = unwinder_->UnwindLocal(false, fast, maxFrameNum, skipFrameNum + 1); in Unwind() 67 ret = unwinder_->UnwindLocalWithTid(tid_, maxFrameNum, skipFrameNum + 1); in Unwind()
|
H A D | backtrace_local_thread.h | 35 bool Unwind(bool fast = false, size_t maxFrameNum = DEFAULT_MAX_FRAME_NUM, size_t skipFrameNum = 0);
|
/base/hiviewdfx/faultloggerd/test/unittest/async_stack/ |
H A D | async_stack_test.cpp | 112 int32_t skipFrameNum = 2; in HWTEST_F() local 113 std::thread (FpUnwinder::Unwind, pcs, maxSize, skipFrameNum).join(); in HWTEST_F() 114 int32_t ret = FpUnwinder::UnwindFallback(pcs, maxSize, skipFrameNum); in HWTEST_F()
|
/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/ |
H A D | unwinder.cpp | 169 bool UnwindLocalWithContext(const ucontext_t& context, size_t maxFrameNum, size_t skipFrameNum); 170 bool UnwindLocalWithTid(pid_t tid, size_t maxFrameNum, size_t skipFrameNum); 171 bool UnwindLocal(bool withRegs, bool fpUnwind, size_t maxFrameNum, size_t skipFrameNum); 172 bool UnwindRemote(pid_t tid, bool withRegs, size_t maxFrameNum, size_t skipFrameNum); 173 bool Unwind(void *ctx, size_t maxFrameNum, size_t skipFrameNum); 174 bool UnwindByFp(void *ctx, size_t maxFrameNum, size_t skipFrameNum); 349 bool Unwinder::UnwindLocalWithContext(const ucontext_t& context, size_t maxFrameNum, size_t skipFrameNum) in UnwindLocalWithContext() argument 351 return impl_->UnwindLocalWithContext(context, maxFrameNum, skipFrameNum); in UnwindLocalWithContext() 354 bool Unwinder::UnwindLocalWithTid(pid_t tid, size_t maxFrameNum, size_t skipFrameNum) in UnwindLocalWithTid() argument 356 return impl_->UnwindLocalWithTid(tid, maxFrameNum, skipFrameNum); in UnwindLocalWithTid() 359 UnwindLocal(bool withRegs, bool fpUnwind, size_t maxFrameNum, size_t skipFrameNum) UnwindLocal() argument 364 UnwindRemote(pid_t tid, bool withRegs, size_t maxFrameNum, size_t skipFrameNum) UnwindRemote() argument 369 Unwind(void *ctx, size_t maxFrameNum, size_t skipFrameNum) Unwind() argument 374 UnwindByFp(void *ctx, size_t maxFrameNum, size_t skipFrameNum) UnwindByFp() argument 515 UnwindLocalWithTid(const pid_t tid, size_t maxFrameNum, size_t skipFrameNum) UnwindLocalWithTid() argument 574 UnwindLocalWithContext(const ucontext_t& context, size_t maxFrameNum, size_t skipFrameNum) UnwindLocalWithContext() argument 584 UnwindLocal(bool withRegs, bool fpUnwind, size_t maxFrameNum, size_t skipFrameNum) UnwindLocal() argument 632 UnwindRemote(pid_t tid, bool withRegs, size_t maxFrameNum, size_t skipFrameNum) UnwindRemote() argument 740 Unwind(void *ctx, size_t maxFrameNum, size_t skipFrameNum) Unwind() argument 805 UnwindByFp(void *ctx, size_t maxFrameNum, size_t skipFrameNum) UnwindByFp() argument [all...] |
/base/hiviewdfx/faultloggerd/interfaces/innerkits/dump_catcher/include/ |
H A D | dfx_dump_catcher.h | 83 bool DoDumpCurrTid(const size_t skipFrameNum, std::string& msg, size_t maxFrameNums);
|
/base/hiviewdfx/faultloggerd/test/unittest/unwind/ |
H A D | unwinder_test.cpp | 56 const size_t skipFrameNum = 2; member in OHOS::HiviewDFX::UnwinderTest 122 unwRet = unwinder->UnwindLocal(false, false, DEFAULT_MAX_FRAME_NUM, skipFrameNum); in HWTEST_F() 175 "UnwindLocal(maxFrameNum, skipFrameNum) is false"; in HWTEST_F() 179 "UnwindLocal(maxFrameNum, skipFrameNum) is true"; in HWTEST_F() 211 unwRet = unwinder->UnwindRemote(child, false, DEFAULT_MAX_FRAME_NUM, skipFrameNum); in HWTEST_F() 273 size_t skipFrameNum = 0; in HWTEST_F() local 274 GTEST_LOG_(INFO) << "when pid <= 0, UnwindRemote(maxFrameNum, skipFrameNum) is false"; in HWTEST_F() 275 ASSERT_FALSE(unwinderNegative->UnwindRemote(-2, maxFrameNum, skipFrameNum)); in HWTEST_F()
|
/base/hiviewdfx/faultloggerd/interfaces/innerkits/dump_catcher/ |
H A D | dfx_dump_catcher.cpp | 80 bool DfxDumpCatcher::DoDumpCurrTid(const size_t skipFrameNum, std::string& msg, size_t maxFrameNums) in DoDumpCurrTid() argument 84 ret = GetBacktrace(msg, skipFrameNum + 1, false, maxFrameNums); in DoDumpCurrTid()
|