Fatal signal 11 (SIGSEGV)発生時の原因追求について

4,826 views
Skip to first unread message

wv5t...@gmail.com

unread,
Jul 4, 2013, 11:23:59 PM7/4/13
to android-g...@googlegroups.com
その他の受信者:
お世話になっております。
やかんと申します。
 
Fatal signal 11 (SIGSEGV)の原因を調査しています。
以下の様な例外が発生し、”ABORTING: INVALID HEAP ADDRESS IN dlfree”で
検索してみた所、「異なるスレッドから同時にメソッドを呼び出すと発生する」という
コメントを見つけたのですが箇所が特定出来ず困っております。
以下のような例外のトレースからJavaソース(もしくはJNI)の発生箇所を
推測することは可能でしょうか?
 
環境としてはAndroid 4.2でandroid-ndk-r8bでライブラリを作成し使用しています。
 
F/libc    (30422): @@@ ABORTING: INVALID HEAP ADDRESS IN dlfree addr=0x5994b158
F/libc    (30422): Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1), thread 30466 (Thread-567)
I/DEBUG   ( 2213): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   ( 2213): Build fingerprint: 'MBX/g24ref/g24ref:4.1.2/JZO54K/20130519:user/test-keys'
I/DEBUG   ( 2213): pid: 30422, tid: 30466, name: Thread-567  >>> jp.co.maru <<<
I/DEBUG   ( 2213): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr deadbaad
I/DEBUG   ( 2213):     r0 00000043  r1 5f713888  r2 00000003  r3 deadbaad
I/DEBUG   ( 2213):     r4 40111a4c  r5 5994b158  r6 5f7138b0  r7 400fb173
I/DEBUG   ( 2213):     r8 5994b160  r9 00000200  sl 5bf6f5d8  fp 5f713c94
I/DEBUG   ( 2213):     ip 00000000  sp 5f7138b0  lr 400e9135  pc 400d4a40  cpsr 00010030
I/DEBUG   ( 2213):     d0  0000000000000005  d1  000000000d000003
I/DEBUG   ( 2213):     d2  000000000e000000  d3  0000000007000000
I/DEBUG   ( 2213):     d4  0000000007000000  d5  0000000034000000
I/DEBUG   ( 2213):     d6  0000000033000000  d7  000000000c000000
I/DEBUG   ( 2213):     d8  3eaaaaab3eaaaaab  d9  0000000000000000
I/DEBUG   ( 2213):     d10 0000000000000000  d11 0000000000000000
I/DEBUG   ( 2213):     d12 0000000000000000  d13 0000000000000000
I/DEBUG   ( 2213):     d14 0000000000000000  d15 0000000000000000
I/DEBUG   ( 2213):     d16 0000000000000006  d17 0000000000000001
I/DEBUG   ( 2213):     d18 0000000000000000  d19 0000000000000000
I/DEBUG   ( 2213):     d20 4033800000000000  d21 3ff0000000000000
I/DEBUG   ( 2213):     d22 0000000000000000  d23 3ff0000000000000
I/DEBUG   ( 2213):     d24 3ff0000000000000  d25 0000000000000000
I/DEBUG   ( 2213):     d26 0000000000000000  d27 ff793600ff783500
I/DEBUG   ( 2213):     d28 ff723500ff753500  d29 ff713400ff6f3400
I/DEBUG   ( 2213):     d30 0000000000000004  d31 0000000000000000
I/DEBUG   ( 2213):     scr 20000013
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): backtrace:
I/DEBUG   ( 2213):     #00  pc 00013a40  /system/lib/libc.so
I/DEBUG   ( 2213):     #01  pc 00015e1d  /system/lib/libc.so (dlfree+1628)
I/DEBUG   ( 2213):     #02  pc 00016fcb  /system/lib/libc.so (free+10)
I/DEBUG   ( 2213):     #03  pc 00056851  /system/lib/libicuuc.so (icu_48::UVector::~UVector()+52)
I/DEBUG   ( 2213):     #04  pc 00051709  /system/lib/libicuuc.so (icu_48::UStack::~UStack()+12)
I/DEBUG   ( 2213):     #05  pc 0008ff5d  /system/lib/libicui18n.so
I/DEBUG   ( 2213):     #06  pc 000a1a17  /system/lib/libicui18n.so
I/DEBUG   ( 2213):     #07  pc 00011f23  /system/lib/libjavacore.so
I/DEBUG   ( 2213):     #08  pc 0001de30  /system/lib/libdvm.so (dvmPlatformInvoke+112)
I/DEBUG   ( 2213):     #09  pc 0004ce73  /system/lib/libdvm.so (dvmCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)+390)
I/DEBUG   ( 2213):     #10  pc 00027260  /system/lib/libdvm.so
I/DEBUG   ( 2213):     #11  pc 0002bb38  /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+180)
I/DEBUG   ( 2213):     #12  pc 0005f5b1  /system/lib/libdvm.so (dvmCallMethodV(Thread*, Method const*, Object*, bool, JValue*, std::__va_list)+272)
I/DEBUG   ( 2213):     #13  pc 0005f5db  /system/lib/libdvm.so (dvmCallMethod(Thread*, Method const*, Object*, JValue*, ...)+20)
I/DEBUG   ( 2213):     #14  pc 00054193  /system/lib/libdvm.so
I/DEBUG   ( 2213):     #15  pc 00012e40  /system/lib/libc.so (__thread_entry+48)
I/DEBUG   ( 2213):     #16  pc 000125a4  /system/lib/libc.so (pthread_create+172)
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): stack:
I/DEBUG   ( 2213):          5f713870  00000001 
I/DEBUG   ( 2213):          5f713874  400fb173  /system/lib/libc.so
I/DEBUG   ( 2213):          5f713878  5994b160 
I/DEBUG   ( 2213):          5f71387c  400e919f  /system/lib/libc.so
I/DEBUG   ( 2213):          5f713880  c0000000 
I/DEBUG   ( 2213):          5f713884  00000007 
I/DEBUG   ( 2213):          5f713888  5f713884 
I/DEBUG   ( 2213):          5f71388c  00000001 
I/DEBUG   ( 2213):          5f713890  400fb157  /system/lib/libc.so
I/DEBUG   ( 2213):          5f713894  00000005 
I/DEBUG   ( 2213):          5f713898  5f7138bc 
I/DEBUG   ( 2213):          5f71389c  0000003d 
I/DEBUG   ( 2213):          5f7138a0  40111a4c 
I/DEBUG   ( 2213):          5f7138a4  5994b158 
I/DEBUG   ( 2213):          5f7138a8  df0027ad 
I/DEBUG   ( 2213):          5f7138ac  00000000 
I/DEBUG   ( 2213):     #00  5f7138b0  34393935 
I/DEBUG   ( 2213):          5f7138b4  38353162 
I/DEBUG   ( 2213):          5f7138b8  400d6700  /system/lib/libc.so
I/DEBUG   ( 2213):          5f7138bc  20404040 
I/DEBUG   ( 2213):          5f7138c0  524f4241  /dev/ashmem/dalvik-mark-stack (deleted)
I/DEBUG   ( 2213):          5f7138c4  474e4954  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 2213):          5f7138c8  4e49203a  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 2213):          5f7138cc  494c4156  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 2213):          5f7138d0  45482044  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 2213):          5f7138d4  41205041  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 2213):          5f7138d8  45524444  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 2213):          5f7138dc  49205353  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 2213):          5f7138e0  6c64204e 
I/DEBUG   ( 2213):          5f7138e4  65657266 
I/DEBUG   ( 2213):          5f7138e8  64646120 
I/DEBUG   ( 2213):          5f7138ec  78303d72 
I/DEBUG   ( 2213):          ........  ........
I/DEBUG   ( 2213):     #01  5f7139d8  400d67c1  /system/lib/libc.so (dlfree)
I/DEBUG   ( 2213):          5f7139dc  00000000 
I/DEBUG   ( 2213):          5f7139e0  5f713b80 
I/DEBUG   ( 2213):          5f7139e4  00000000 
I/DEBUG   ( 2213):          5f7139e8  5f713bf0 
I/DEBUG   ( 2213):          5f7139ec  5f713c10 
I/DEBUG   ( 2213):          5f7139f0  00000200 
I/DEBUG   ( 2213):          5f7139f4  400d7fcd  /system/lib/libc.so (free+12)
I/DEBUG   ( 2213):     #02  5f7139f8  5994b160 
I/DEBUG   ( 2213):          5f7139fc  4057e855  /system/lib/libicuuc.so (icu_48::UVector::~UVector()+56)
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory near r1:
I/DEBUG   ( 2213):     5f713868 400fb157 5f7138bc 00000001 400fb173  W..@.8q_....s..@
I/DEBUG   ( 2213):     5f713878 5994b160 400e919f c0000000 00000007  `..Y...@........
I/DEBUG   ( 2213):     5f713888 5f713884 00000001 400fb157 00000005  .8q_....W..@....
I/DEBUG   ( 2213):     5f713898 5f7138bc 0000003d 40111a4c 5994b158  .8q_=...L..@X..Y
I/DEBUG   ( 2213):     5f7138a8 df0027ad 00000000 34393935 38353162  .'......5994b158
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory near r4:
I/DEBUG   ( 2213):     40111a2c 00000000 00000000 00000000 00000000  ................
I/DEBUG   ( 2213):     40111a3c 00000000 00000000 00000000 00000000  ................
I/DEBUG   ( 2213):     40111a4c 54bf1c7d 00000000 00000000 00000000  }..T............
I/DEBUG   ( 2213):     40111a5c 00000000 00000000 00000000 00000000  ................
I/DEBUG   ( 2213):     40111a6c 00000000 00000000 00000000 00000000  ................
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory near r5:
I/DEBUG   ( 2213):     5994b138 00000000 00000000 00000000 0000001b  ................
I/DEBUG   ( 2213):     5994b148 0000002f 00000001 0000002b 00040004  /.......+.......
I/DEBUG   ( 2213):     5994b158 40800000 00000129 5c2ce788 00000003  ...@).....,\....
I/DEBUG   ( 2213):     5994b168 00000050 00000109 5c08f078 5994c068  P.......x..\h..Y
I/DEBUG   ( 2213):     5994b178 00000000 00000000 00000000 00000029  ............)...
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory near r6:
I/DEBUG   ( 2213):     5f713890 400fb157 00000005 5f7138bc 0000003d  W..@.....8q_=...
I/DEBUG   ( 2213):     5f7138a0 40111a4c 5994b158 df0027ad 00000000  L..@X..Y.'......
I/DEBUG   ( 2213):     5f7138b0 34393935 38353162 400d6700 20404040  5994b158.g.@@@@
I/DEBUG   ( 2213):     5f7138c0 524f4241 474e4954 4e49203a 494c4156  ABORTING: INVALI
I/DEBUG   ( 2213):     5f7138d0 45482044 41205041 45524444 49205353  D HEAP ADDRESS I
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory near r7:
I/DEBUG   ( 2213):     400fb150 3d726464 6c007830 00636269 50414548  ddr=0x.libc.HEAP
I/DEBUG   ( 2213):     400fb160 4d454d20 2059524f 52524f43 49545055   MEMORY CORRUPTI
I/DEBUG   ( 2213):     400fb170 49004e4f 4c41564e 48204449 20504145  ON.INVALID HEAP
I/DEBUG   ( 2213):     400fb180 52444441 00535345 2078616d 74737973  ADDRESS.max syst
I/DEBUG   ( 2213):     400fb190 62206d65 73657479 25203d20 756c3031  em bytes = %10lu
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory near r8:
I/DEBUG   ( 2213):     5994b140 00000000 0000001b 0000002f 00000001  ......../.......
I/DEBUG   ( 2213):     5994b150 0000002b 00040004 40800000 00000129  +..........@)...
I/DEBUG   ( 2213):     5994b160 5c2ce788 00000003 00000050 00000109  ..,\....P.......
I/DEBUG   ( 2213):     5994b170 5c08f078 5994c068 00000000 00000000  x..\h..Y........
I/DEBUG   ( 2213):     5994b180 00000000 00000029 4010a52c 4010a52c  ....)...,..@,..@
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory near sl:
I/DEBUG   ( 2213):     5bf6f5b8 00000000 00000000 00000000 00000453  ............S...
I/DEBUG   ( 2213):     5bf6f5c8 57df26a8 5c315e24 56ccd0e0 40c4b000  .&.W$^1\...V...@
I/DEBUG   ( 2213):     5bf6f5d8 00000000 00000000 5f713da8 00000000  .........=q_....
I/DEBUG   ( 2213):     5bf6f5e8 5f713ddc 00000012 00000000 40757fc0  .=q_..........u@
I/DEBUG   ( 2213):     5bf6f5f8 00000000 00000000 40224e70 5c312300  ........pN"@.#1\
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory near fp:
I/DEBUG   ( 2213):     5f713c74 5bf6f5d8 5f713c94 40757e34 5c315e24  ...[.<q_4~u@$^1\
I/DEBUG   ( 2213):     5f713c84 00000001 40d1c390 57e8effe 00000024  .......@...W$...
I/DEBUG   ( 2213):     5f713c94 40786e77 5c315e24 57e8effb 516e4ecd  wnx@$^1\...W.NnQ
I/DEBUG   ( 2213):     5f713ca4 5bf6f5d8 29000001 00000000 407e469c  ...[...).....F~@
I/DEBUG   ( 2213):     5f713cb4 40111a4c 0003d0ac 57df26a8 5c315e30  L..@.....&.W0^1\
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory near sp:
I/DEBUG   ( 2213):     5f713890 400fb157 00000005 5f7138bc 0000003d  W..@.....8q_=...
I/DEBUG   ( 2213):     5f7138a0 40111a4c 5994b158 df0027ad 00000000  L..@X..Y.'......
I/DEBUG   ( 2213):     5f7138b0 34393935 38353162 400d6700 20404040  5994b158.g.@@@@
I/DEBUG   ( 2213):     5f7138c0 524f4241 474e4954 4e49203a 494c4156  ABORTING: INVALI
I/DEBUG   ( 2213):     5f7138d0 45482044 41205041 45524444 49205353  D HEAP ADDRESS I
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): code around pc:
I/DEBUG   ( 2213):     400d4a20 f00f4479 a803f831 f44f4669 f00f7280  yD..1...iFO..r..
I/DEBUG   ( 2213):     400d4a30 490df82b aa032007 f0144479 4b05fb87  +..I. ..yD.....K
I/DEBUG   ( 2213):     400d4a40 9a43601d 428a6821 f016d001 b045fe73  .`C.!h.B....s.E.
I/DEBUG   ( 2213):     400d4a50 bf00bdf0 deadbaad 00030ad4 0002677c  ............|g..
I/DEBUG   ( 2213):     400d4a60 00026765 0002672a 0002671b 4c19b538  eg..*g...g..8..L
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): code around lr:
I/DEBUG   ( 2213):     400e9114 0001c6fa 00028960 b5704b0a 240c447b  ....`....Kp.{D.$
I/DEBUG   ( 2213):     400e9124 fb04460d 22033400 46296860 ed66f7e4  .F...4."`h)F..f.
I/DEBUG   ( 2213):     400e9134 46061c43 f7ebd104 6800fc31 d0f22804  C..F....1..h.(..
I/DEBUG   ( 2213):     400e9144 bd704630 0001c6b8 b088b570 4615460c  0Fp.....p....F.F
I/DEBUG   ( 2213):     400e9154 b9099001 447c4c12 46204912 f7e64479  .....L|D.I FyD..
I/DEBUG   ( 2213):
I/DEBUG   ( 2213): memory map around fault addr deadbaad:
I/DEBUG   ( 2213):     be87b000-be89c000 [stack]
I/DEBUG   ( 2213):     (no map for address)
I/DEBUG   ( 2213):     ffff0000-ffff1000 [vectors]
 
Reply all
Reply to author
Forward
0 new messages