Google breakpad give invalid dump info on some devices/cpus/os?

1

I've compiled and ran google-breakpad on android app successfully, and solved some crashes with the sufficient information collected through it. But among the dumps there're some insufficient ones that give no stack trace or issued models. I spent some time trying to figure out the relationship between dump info and device type but found no traces. Here's my "insufficient" dump, only a memory dump for each thead, no symbols given

Operating system: Android
                  0.0.0 Linux 3.18.14-8763148 #1 SMP PREEMPT Fri Jul 29 08:47:49 KST 2016 armv8l
CPU: arm
     ARMv1 vendor(0x53) part(0x5300d030) features: half,thumb,fastmult,vfpv2,edsp,neon,vfpv3,tls,vfpv4,idiva,idivt
     8 CPUs

Crash reason:  SIGSEGV
Crash address: 0x0

Thread 0 (crashed)
 0  0xf72790e4
     r0 = 0x00000000    r1 = 0x00000000    r2 = 0x00000000    r3 = 0x00000000
     r4 = 0x00000000    r5 = 0xff9436ac    r6 = 0x00000000    r7 = 0x00000000
     r8 = 0x12e055b0    r9 = 0xf4da4500   r10 = 0x13171a60   r12 = 0xdbb81cc4
     fp = 0x12fc2920    sp = 0xff943678    lr = 0xdb9293b1    pc = 0xf72790e4
    Found by: given as instruction pointer in context

Thread 1
 0  0xf72a13ac
     r0 = 0xfffffffc    r1 = 0x00000000    r2 = 0x00000000    r3 = 0x00000008
     r4 = 0xf441c728    r5 = 0xf441c780    r6 = 0x00000057    r7 = 0x000000b1
     r8 = 0x00000000    r9 = 0xee4cfd80   r10 = 0xf441c7ec   r12 = 0xee5e8c00
     fp = 0xf4cfc918    sp = 0xf441c728    lr = 0xf727d0f3    pc = 0xf72a13ac
    Found by: given as instruction pointer in context

Thread 2
 0  0xf7277694
.... 

And here's what valid dump gives, the crashed thread lists the stack trace

Operating system: Android
                  0.0.0 Linux 3.4.0 #1 SMP PREEMPT Wed Jun 3 16:40:52 CST 2015 armv7l
CPU: arm
     ARMv7 ARM part(0x4100c070) features: swp,half,thumb,fastmult,vfpv2,edsp,neon,vfpv3,tls,vfpv4,idiva,idivt
     4 CPUs

Crash reason:  SIGSEGV
Crash address: 0x13c

Thread 28 (crashed)
 0  libxxx.so!__sync_fetch_and_add_4 [linux-atomic.c : 65 + 0x0]
     r0 = 0x0000013c    r1 = 0xffffffff    r2 = 0x5faf1a3c    r3 = 0x603733c4
     r4 = 0x00000134    r5 = 0x0000013c    r6 = 0xffffffff    r7 = 0x60575b78
     r8 = 0x5faf1a3c    r9 = 0x60476000   r10 = 0x60575f00   r12 = 0x6035eed4
     fp = 0x5faf1ad0    sp = 0x605759e8    lr = 0x600183d9    pc = 0x6010f7e6
    Found by: given as instruction pointer in context
 1  libxxx.so!std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_Rep::_M_dispose [atomicity.h : 49 + 0x7]
     r4 = 0x00000134    r5 = 0x60575a0c    r6 = 0x60575a88    r7 = 0x60575b78
     r8 = 0x5faf1a3c    r9 = 0x60476000   r10 = 0x60575f00    fp = 0x5faf1ad0
     sp = 0x605759f8    pc = 0x600183d9
    Found by: call frame info
 2  libxxx.so!std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::~basic_string [basic_string.h : 539 + 0xb]
     r3 = 0x603733c4    r4 = 0x5fb09ae0    r5 = 0x5fb09ad0    r6 = 0x60575a88
     r7 = 0x60575b78    r8 = 0x5faf1a3c    r9 = 0x60476000   r10 = 0x60575f00
     fp = 0x5faf1ad0    sp = 0x60575a08    pc = 0x600ff1f7
    Found by: call frame info
  .... 
android
android-ndk
google-breakpad
asked on Stack Overflow Aug 15, 2016 by Martian Puss

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0