From cac2fa9b53772808a916d0d828bd61ae76d8865f Mon Sep 17 00:00:00 2001 From: cs1111 Date: Tue, 9 Sep 2025 14:55:35 +0800 Subject: [PATCH 1/2] fix:remove handler alarm signal Signed-off-by: cs1111 Change-Id: I622fa946db0818c8d056da8afa6954663708322d --- 2076.diff:Zone.Identifier | 3 +++ frameworks/localhandler/dfx_signal_local_handler.cpp | 2 +- interfaces/innerkits/dump_catcher/dfx_dump_catcher.cpp | 4 ++++ 3 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 2076.diff:Zone.Identifier diff --git a/2076.diff:Zone.Identifier b/2076.diff:Zone.Identifier new file mode 100644 index 000000000..0d4ac0f4c --- /dev/null +++ b/2076.diff:Zone.Identifier @@ -0,0 +1,3 @@ +[ZoneTransfer] +ZoneId=3 +HostUrl=https://gitee.com/openharmony/hiviewdfx_faultloggerd/pulls/2076.diff diff --git a/frameworks/localhandler/dfx_signal_local_handler.cpp b/frameworks/localhandler/dfx_signal_local_handler.cpp index 36c3f4bdc..cff33f089 100644 --- a/frameworks/localhandler/dfx_signal_local_handler.cpp +++ b/frameworks/localhandler/dfx_signal_local_handler.cpp @@ -55,7 +55,7 @@ static struct ProcessDumpRequest g_request; static pthread_mutex_t g_signalHandlerMutex = PTHREAD_MUTEX_INITIALIZER; static constexpr int CATCHER_STACK_SIGNALS[] = { - SIGABRT, SIGBUS, SIGILL, SIGSEGV, SIGALRM, + SIGABRT, SIGBUS, SIGILL, SIGSEGV, }; #if !defined(__aarch64__) && !defined(__loongarch_lp64) diff --git a/interfaces/innerkits/dump_catcher/dfx_dump_catcher.cpp b/interfaces/innerkits/dump_catcher/dfx_dump_catcher.cpp index ceaa3e70e..c3ccb077a 100644 --- a/interfaces/innerkits/dump_catcher/dfx_dump_catcher.cpp +++ b/interfaces/innerkits/dump_catcher/dfx_dump_catcher.cpp @@ -662,6 +662,10 @@ int32_t DfxDumpCatcher::Impl::DoDumpCatchRemote(int pid, int tid, std::string& m return DUMPCATCH_EPARAM; } + if (IsFrozen(pid, ret) && ret == DUMPCATCH_TIMEOUT_KERNEL_FROZEN) { + stack_ = stackKit_.GetProcessStackWithTimeout(pid, WAIT_GET_KERNEL_STACK_TIMEOUT); + return ret; + } if (DfxDumpCatcherSlowPolicy::GetInstance().IsDumpCatcherInSlowPeriod(pid)) { DFXLOGW("dumpcatch in slow period, return pid (%{public}d) kernel stack directly!", pid); msg.append("Result: pid(" + std::to_string(pid) + ") last dump slow, return kernel stack directly.\n"); -- Gitee From 9c182faf0571138975957700143997ae9775891e Mon Sep 17 00:00:00 2001 From: cs1111 Date: Tue, 9 Sep 2025 14:55:54 +0800 Subject: [PATCH 2/2] fix:remove handler alarm signal Signed-off-by: cs1111 Change-Id: I21e89d1f9b18a1a5150c8725ef92b5526940359b --- 2076.diff:Zone.Identifier | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 2076.diff:Zone.Identifier diff --git a/2076.diff:Zone.Identifier b/2076.diff:Zone.Identifier deleted file mode 100644 index 0d4ac0f4c..000000000 --- a/2076.diff:Zone.Identifier +++ /dev/null @@ -1,3 +0,0 @@ -[ZoneTransfer] -ZoneId=3 -HostUrl=https://gitee.com/openharmony/hiviewdfx_faultloggerd/pulls/2076.diff -- Gitee