Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 1597 (phoneserver)

2k Views Asked by At

I ported android 7.1 Nougat and ran into this error in the phoneserver. Here is a small snippet from the logcat. Can you please tell me how to fix it.

-------— beginning of crash
08-12 22:38:58.159 1597 1597 F libc : Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 
in tid 1597 (phoneserver)
08-12 22:38:58.165 120 120 W : debuggerd: handling request: pid=1597 uid=10070 gid=10070 
tid=1597
08-12 22:38:58.182 1598 1598 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** 
*** *** *** ***
08-12 22:38:58.182 1598 1598 F DEBUG : CM Version: '14.1-20210809-UNOFFICIAL-higgs2g'
08-12 22:38:58.182 1598 1598 F DEBUG : Build fingerprint: 
'samsung/cm_higgs2g/higgs2g:7.1/NDE63X/aeaa9a3dd2:userdebug/test-keys'
08-12 22:38:58.182 1598 1598 F DEBUG : Revision: '0'
08-12 22:38:58.182 1598 1598 F DEBUG : ABI: 'arm'
08-12 22:38:58.183 1598 1598 F DEBUG : pid: 1597, tid: 1597, name: phoneserver »> 
phoneserver «<
08-12 22:38:58.183 1598 1598 F DEBUG : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault 
addr 0x0
08-12 22:38:58.183 1598 1598 F DEBUG : r0 00000000 r1 b6fb2db8 r2 bee62a1c r3 ffffffd8
08-12 22:38:58.183 1598 1598 F DEBUG : r4 b6fb6f0c r5 6d2d0064 r6 ffffffff r7 00000000
08-12 22:38:58.183 1598 1598 F DEBUG : r8 00000000 r9 00000000 sl 00000000 fp bee62a0c
08-12 22:38:58.183 1598 1598 F DEBUG : ip 00000002 sp bee62670 lr b6fad89d pc b6e4b46c 
cpsr 600e0030
08-12 22:38:58.190 1598 1598 F DEBUG :
08-12 22:38:58.190 1598 1598 F DEBUG : backtrace:
08-12 22:38:58.190 1598 1598 F DEBUG : #00 pc 0001846c /system/lib/libc.so (strcmp+375)
08-12 22:38:58.190 1598 1598 F DEBUG : #01 pc 00002899 /system/bin/phoneserver
08-12 22:38:58.190 1598 1598 F DEBUG : #02 pc 00016c7d /system/lib/libc.so 
(__libc_init+48)
08-12 22:38:58.190 1598 1598 F DEBUG : #03 pc 0000210c /system/bin/phoneserver
08-12 22:38:58.239 454 633 W NativeCrashListener: Couldn't find ProcessRecord for pid 
1597
08-12 22:38:58.244 454 488 I BootReceiver: Copying /data/tombstones/tombstone_07 to 
DropBox (SYSTEM_TOMBSTONE)
08-12 22:38:58.247 120 120 W : debuggerd: resuming target 1597
1

There are 1 best solutions below

5
Snild Dolkow On

There is not enough information here to figure it out in very much detail.

The phoneserver process tried to access a NULL pointer inside a strcmp() call -- one of the two arguments being compared is likely NULL.

Unfortunately, your /system/bin/phoneserver executable does not seem to contain debug symbols (or at least doesn't have one for address 0x2899). If you have a corresponding file (i.e. haven't rebuilt your source tree since this build) in out/.../symbols/system/bin/phoneserver, you may be able to figure out which function it is through gdb or bintools (objdump -d, nm, etc).

If this crash is easily reproducible, another possibility would be to push the unstripped executable (the one in symbols/) onto the device, replacing the one at /system/bin/phoneserver. Hopefully, the crash handler will then successfully resolve that symbol for you -- printing it out in the log. I'm not sure that this will work, but it could be the easiest way if it does.