From 3b7eb7087f2106c339972b7ffb0472944a9ceb1b Mon Sep 17 00:00:00 2001 From: Mateusz Moscicki Date: Fri, 20 Jul 2018 12:58:22 +0200 Subject: [PATCH] Split execute_crash_modules Change-Id: Iae6af748786c68dcb45a50dc37275fe12e40d85d --- src/crash-manager/crash-manager.c | 51 +++++++++++++++++++++++++++------------ 1 file changed, 36 insertions(+), 15 deletions(-) diff --git a/src/crash-manager/crash-manager.c b/src/crash-manager/crash-manager.c index 2a102c5..80dd82d 100644 --- a/src/crash-manager/crash-manager.c +++ b/src/crash-manager/crash-manager.c @@ -708,16 +708,12 @@ static void save_so_info() get_and_save_so_info(maps_path, so_info_path); } -static void execute_crash_modules(int argc, char *argv[]) +#ifdef TIZEN_ENABLE_COREDUMP +static void execute_crash_pipe(int argc, char *argv[]) { - -#if defined(TIZEN_ENABLE_COREDUMP) || defined(TIZEN_ENABLE_MINICOREDUMP) || defined(TIZEN_FEATURE_PTRACE_CALLSTACK) int ret; char command[PATH_MAX]; -#endif - _D("Execute crash module: "); -#ifdef TIZEN_ENABLE_COREDUMP /* Execute crash-pipe */ ret = snprintf(command, sizeof(command), "%s --save-core %s", @@ -731,10 +727,12 @@ static void execute_crash_modules(int argc, char *argv[]) return; } system_command(command); -#endif - +} +#endif /* TIZEN_ENABLE_COREDUMP */ #ifdef TIZEN_ENABLE_MINICOREDUMP +static void execute_minicoredump(int argc, char *argv[]) +{ char *coredump_name = NULL; char *prstatus_fd_str = NULL; @@ -774,16 +772,15 @@ static void execute_crash_modules(int argc, char *argv[]) free(coredump_name); free(prstatus_fd_str); -#endif +} +#endif /* TIZEN_ENABLE_MINICOREDUMP */ #ifdef TIZEN_FEATURE_PTRACE_CALLSTACK +static void execute_crash_stack(int argc, char *argv[]) +{ + int ret; + char command[PATH_MAX]; -# ifdef SYS_ASSERT - /* Use process_vm_readv() version as fallback if sys-assert - * failed to generate report */ - if (crash_info.have_sysassert_report) - return; -# endif /* Execute crash-stack */ if (argc > 8) ret = snprintf(command, sizeof(command), @@ -809,6 +806,30 @@ static void execute_crash_modules(int argc, char *argv[]) } system_command(command); +} +#endif /* TIZEN_FEATURE_PTRACE_CALLSTACK */ + +static void execute_crash_modules(int argc, char *argv[]) +{ + _D("Execute crash module: "); + +#ifdef TIZEN_ENABLE_COREDUMP + execute_crash_pipe(argc, argv); +#endif + +#ifdef TIZEN_ENABLE_MINICOREDUMP + execute_minicoredump(argc, argv); +#endif + +#ifdef TIZEN_FEATURE_PTRACE_CALLSTACK + +# ifdef SYS_ASSERT + /* Use process_vm_readv() version as fallback if sys-assert + * failed to generate report */ + if (crash_info.have_sysassert_report) + return; +# endif + execute_crash_stack(argc, argv); #endif /* TIZEN_FEATURE_PTRACE_CALLSTACK */ } -- 2.7.4