From 3249b3a8dd37ed16b4819e941989d945f6571673 Mon Sep 17 00:00:00 2001 From: Chih-Hung Hsieh Date: Fri, 11 May 2018 16:01:21 -0700 Subject: Expect optional (offset ...) in frame dump. * New lld could create files that map to non-zero offset at run time. Test: debuggerd_test Bug: 79590156 Change-Id: I12db0ebef489ba8a1e648a29d214f8d3c3703996 --- debuggerd/debuggerd_test.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'debuggerd') diff --git a/debuggerd/debuggerd_test.cpp b/debuggerd/debuggerd_test.cpp index 9b64be70f..dfb7a6a7c 100644 --- a/debuggerd/debuggerd_test.cpp +++ b/debuggerd/debuggerd_test.cpp @@ -80,8 +80,13 @@ constexpr char kWaitForGdbKey[] = "debug.debuggerd.wait_for_gdb"; return value; \ }() +// Backtrace frame dump could contain: +// #01 pc 0001cded /data/tmp/debuggerd_test32 (raise_debugger_signal+80) +// or +// #01 pc 00022a09 /data/tmp/debuggerd_test32 (offset 0x12000) (raise_debugger_signal+80) #define ASSERT_BACKTRACE_FRAME(result, frame_name) \ - ASSERT_MATCH(result, R"(#\d\d pc [0-9a-f]+\s+ \S+ \()" frame_name R"(\+)"); + ASSERT_MATCH(result, \ + R"(#\d\d pc [0-9a-f]+\s+ \S+ (\(offset 0x[0-9a-f]+\) )?\()" frame_name R"(\+)"); static void tombstoned_intercept(pid_t target_pid, unique_fd* intercept_fd, unique_fd* output_fd, InterceptStatus* status, DebuggerdDumpType intercept_type) { -- cgit v1.2.3-54-g00ecf