Reputation: 13384
My Android APP crashes inside JNI code and LogCat shows following output, what could be possible reason of this failure? How do I manage Native memory inside JNI ?
07-16 11:51:19.500: W/dalvikvm(15869): threadid=4: spin on suspend #1 threadid=3 (pcf=0)
07-16 11:51:20.242: W/dalvikvm(15869): threadid=4: spin on suspend #2 threadid=3 (pcf=0)
07-16 11:51:20.242: I/dalvikvm(15869): "Signal Catcher" daemon prio=5 tid=4 RUNNABLE
07-16 11:51:20.242: I/dalvikvm(15869): | group="system" sCount=0 dsCount=0 obj=0x405115e8 self=0x159898
07-16 11:51:20.242: I/dalvikvm(15869): | sysTid=15873 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1575600
07-16 11:51:20.242: I/dalvikvm(15869): | schedstat=( 1251222 701905 25 )
07-16 11:51:20.242: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:20.242: I/dalvikvm(15869): "GC" daemon prio=5 tid=3 RUNNABLE
07-16 11:51:20.242: I/dalvikvm(15869): | group="system" sCount=1 dsCount=0 obj=0x40511540 self=0x159d70
07-16 11:51:20.242: I/dalvikvm(15869): | sysTid=15872 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1422192
07-16 11:51:20.242: I/dalvikvm(15869): | schedstat=( 149871827 1162109373 98 )
07-16 11:51:20.281: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:21.054: W/dalvikvm(15869): threadid=4: spin on suspend #3 threadid=3 (pcf=0)
07-16 11:51:21.054: I/dalvikvm(15869): "Signal Catcher" daemon prio=5 tid=4 RUNNABLE
07-16 11:51:21.054: I/dalvikvm(15869): | group="system" sCount=0 dsCount=0 obj=0x405115e8 self=0x159898
07-16 11:51:21.054: I/dalvikvm(15869): | sysTid=15873 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1575600
07-16 11:51:21.054: I/dalvikvm(15869): | schedstat=( 2502444 65551756 35 )
07-16 11:51:21.054: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:21.054: I/dalvikvm(15869): "GC" daemon prio=5 tid=3 RUNNABLE
07-16 11:51:21.054: I/dalvikvm(15869): | group="system" sCount=1 dsCount=0 obj=0x40511540 self=0x159d70
07-16 11:51:21.054: I/dalvikvm(15869): | sysTid=15872 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1422192
07-16 11:51:21.054: I/dalvikvm(15869): | schedstat=( 149871827 1162109373 98 )
07-16 11:51:21.117: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:21.914: W/dalvikvm(15869): threadid=4: spin on suspend #4 threadid=3 (pcf=0)
07-16 11:51:21.914: I/dalvikvm(15869): "Signal Catcher" daemon prio=5 tid=4 RUNNABLE
07-16 11:51:21.914: I/dalvikvm(15869): | group="system" sCount=0 dsCount=0 obj=0x405115e8 self=0x159898
07-16 11:51:21.914: I/dalvikvm(15869): | sysTid=15873 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1575600
07-16 11:51:21.914: I/dalvikvm(15869): | schedstat=( 3479006 203796386 45 )
07-16 11:51:21.914: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:21.914: I/dalvikvm(15869): "GC" daemon prio=5 tid=3 RUNNABLE
07-16 11:51:21.914: I/dalvikvm(15869): | group="system" sCount=1 dsCount=0 obj=0x40511540 self=0x159d70
07-16 11:51:21.914: I/dalvikvm(15869): | sysTid=15872 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1422192
07-16 11:51:21.914: I/dalvikvm(15869): | schedstat=( 149871827 1162109373 98 )
07-16 11:51:22.015: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:22.796: W/dalvikvm(15869): threadid=4: spin on suspend #5 threadid=3 (pcf=0)
07-16 11:51:22.796: I/dalvikvm(15869): "Signal Catcher" daemon prio=5 tid=4 RUNNABLE
07-16 11:51:22.796: I/dalvikvm(15869): | group="system" sCount=0 dsCount=0 obj=0x405115e8 self=0x159898
07-16 11:51:22.796: I/dalvikvm(15869): | sysTid=15873 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1575600
07-16 11:51:22.804: I/dalvikvm(15869): | schedstat=( 4821778 368194582 56 )
07-16 11:51:22.804: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:22.804: I/dalvikvm(15869): "GC" daemon prio=5 tid=3 RUNNABLE
07-16 11:51:22.804: I/dalvikvm(15869): | group="system" sCount=1 dsCount=0 obj=0x40511540 self=0x159d70
07-16 11:51:22.804: I/dalvikvm(15869): | sysTid=15872 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1422192
07-16 11:51:22.804: I/dalvikvm(15869): | schedstat=( 149871827 1162109373 98 )
07-16 11:51:22.867: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:23.617: W/dalvikvm(15869): threadid=4: spin on suspend #6 threadid=3 (pcf=0)
07-16 11:51:23.617: I/dalvikvm(15869): "Signal Catcher" daemon prio=5 tid=4 RUNNABLE
07-16 11:51:23.617: I/dalvikvm(15869): | group="system" sCount=0 dsCount=0 obj=0x405115e8 self=0x159898
07-16 11:51:23.617: I/dalvikvm(15869): | sysTid=15873 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1575600
07-16 11:51:23.617: I/dalvikvm(15869): | schedstat=( 5706788 437561037 64 )
07-16 11:51:23.617: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:23.617: I/dalvikvm(15869): "GC" daemon prio=5 tid=3 RUNNABLE
07-16 11:51:23.617: I/dalvikvm(15869): | group="system" sCount=1 dsCount=0 obj=0x40511540 self=0x159d70
07-16 11:51:23.617: I/dalvikvm(15869): | sysTid=15872 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1422192
07-16 11:51:23.617: I/dalvikvm(15869): | schedstat=( 149871827 1162109373 98 )
07-16 11:51:23.695: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:24.445: W/dalvikvm(15869): threadid=4: spin on suspend #7 threadid=3 (pcf=0)
07-16 11:51:24.445: I/dalvikvm(15869): "Signal Catcher" daemon prio=5 tid=4 RUNNABLE
07-16 11:51:24.445: I/dalvikvm(15869): | group="system" sCount=0 dsCount=0 obj=0x405115e8 self=0x159898
07-16 11:51:24.445: I/dalvikvm(15869): | sysTid=15873 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1575600
07-16 11:51:24.445: I/dalvikvm(15869): | schedstat=( 6744387 515899659 74 )
07-16 11:51:24.445: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:24.445: I/dalvikvm(15869): "GC" daemon prio=5 tid=3 RUNNABLE
07-16 11:51:24.445: I/dalvikvm(15869): | group="system" sCount=1 dsCount=0 obj=0x40511540 self=0x159d70
07-16 11:51:24.445: I/dalvikvm(15869): | sysTid=15872 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1422192
07-16 11:51:24.445: I/dalvikvm(15869): | schedstat=( 149871827 1162109373 98 )
07-16 11:51:24.445: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:25.195: W/dalvikvm(15869): threadid=4: spin on suspend #8 threadid=3 (pcf=0)
07-16 11:51:25.195: I/dalvikvm(15869): "Signal Catcher" daemon prio=5 tid=4 RUNNABLE
07-16 11:51:25.195: I/dalvikvm(15869): | group="system" sCount=0 dsCount=0 obj=0x405115e8 self=0x159898
07-16 11:51:25.195: I/dalvikvm(15869): | sysTid=15873 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1575600
07-16 11:51:25.195: I/dalvikvm(15869): | schedstat=( 7751467 517486574 82 )
07-16 11:51:25.195: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
07-16 11:51:25.195: I/dalvikvm(15869): "GC" daemon prio=5 tid=3 RUNNABLE
07-16 11:51:25.195: I/dalvikvm(15869): | group="system" sCount=1 dsCount=0 obj=0x40511540 self=0x159d70
07-16 11:51:25.195: I/dalvikvm(15869): | sysTid=15872 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=1422192
07-16 11:51:25.195: I/dalvikvm(15869): | schedstat=( 149871827 1162109373 98 )
07-16 11:51:25.203: I/dalvikvm(15869): at dalvik.system.NativeStart.run(Native Method)
Upvotes: 0
Views: 1580
Reputation: 13384
it was clear from the beginning that the problem is in JNI, I cross checked the native code and found that I was using memset()
and memcpy()
in JNI with wrong number of bytes. I corrected the code and the problem is solved.
For others facing same problem, "Please check your memory usage in native code."
Upvotes: 0
Reputation: 4400
Similar problem here..Please see here..Might help you somewhere
Upvotes: 1