Blame 0009-ccpp-tell-gdb-to-analyze-saved-binary-image.patch
|
Matej Habrnal |
345ed6 |
From 98e5d89b5238eac954d1947de52c6b3fcf3ae987 Mon Sep 17 00:00:00 2001
|
|
Matej Habrnal |
345ed6 |
From: Jakub Filak <jfilak@redhat.com>
|
|
Matej Habrnal |
345ed6 |
Date: Tue, 29 Nov 2016 11:24:49 +0100
|
|
Matej Habrnal |
345ed6 |
Subject: [PATCH] ccpp: tell gdb to analyze saved binary image
|
|
Matej Habrnal |
345ed6 |
|
|
Matej Habrnal |
345ed6 |
This is particularly useful when dealing with crashes in containers and
|
|
Matej Habrnal |
345ed6 |
changed root environments. GDB reads the debug information from the
|
|
Matej Habrnal |
345ed6 |
source elf and if the source elf is not available GDB generates useless
|
|
Matej Habrnal |
345ed6 |
backtraces.
|
|
Matej Habrnal |
345ed6 |
|
|
Matej Habrnal |
345ed6 |
Signed-off-by: Jakub Filak <jfilak@redhat.com>
|
|
Matej Habrnal |
345ed6 |
---
|
|
Matej Habrnal |
345ed6 |
src/lib/hooklib.c | 8 +++++++-
|
|
Matej Habrnal |
345ed6 |
1 file changed, 7 insertions(+), 1 deletion(-)
|
|
Matej Habrnal |
345ed6 |
|
|
Matej Habrnal |
345ed6 |
diff --git a/src/lib/hooklib.c b/src/lib/hooklib.c
|
|
Matej Habrnal |
345ed6 |
index cb5c4cb..ccb1936 100644
|
|
Matej Habrnal |
345ed6 |
--- a/src/lib/hooklib.c
|
|
Matej Habrnal |
345ed6 |
+++ b/src/lib/hooklib.c
|
|
Matej Habrnal |
345ed6 |
@@ -246,7 +246,13 @@ char *get_backtrace(const char *dump_dir_name, unsigned timeout_sec, const char
|
|
Matej Habrnal |
345ed6 |
struct dump_dir *dd = dd_opendir(dump_dir_name, /*flags:*/ 0);
|
|
Matej Habrnal |
345ed6 |
if (!dd)
|
|
Matej Habrnal |
345ed6 |
return NULL;
|
|
Matej Habrnal |
345ed6 |
- char *executable = dd_load_text(dd, FILENAME_EXECUTABLE);
|
|
Matej Habrnal |
345ed6 |
+
|
|
Matej Habrnal |
345ed6 |
+ char *executable = NULL;
|
|
Matej Habrnal |
345ed6 |
+ if (dd_exist(dd, FILENAME_BINARY))
|
|
Matej Habrnal |
345ed6 |
+ executable = concat_path_file(dd->dd_dirname, FILENAME_BINARY);
|
|
Matej Habrnal |
345ed6 |
+ else
|
|
Matej Habrnal |
345ed6 |
+ executable = dd_load_text(dd, FILENAME_EXECUTABLE);
|
|
Matej Habrnal |
345ed6 |
+
|
|
Matej Habrnal |
345ed6 |
dd_close(dd);
|
|
Matej Habrnal |
345ed6 |
|
|
Matej Habrnal |
345ed6 |
/* Let user know what's going on */
|
|
Matej Habrnal |
345ed6 |
--
|
|
Matej Habrnal |
345ed6 |
2.9.3
|
|
Matej Habrnal |
345ed6 |
|