先找到这个文件,由关键字ServerThread (喂狗是由这个线程执行的)
android.server.ServerThread
waiting to lock <0x4223a520> (a com.android.server.am.ActivityManagerService) held by tid=9 (Binder Thread #1)
so i this tread is waiting Binder Thread #1 free lock.
"Binder Thread #1" prio=5 tid=9 NATIVE
| group="main" sCount=1 dsCount=0 obj=0x42226ca0 self=0x87e8360
| sysTid=272 nice=0 sched=0/0 cgrp=default handle=142063040
| schedstat=( 2753682498 1834114380 9237 ) utm=211 stm=64 core=0
at android.os.BinderProxy.transact(Native Method)
at android.app.IActivityController$Stub$Proxy.activityStarting(IActivityController.java:162)
at com.android.server.am.ActivityStack.startActivityLocked(ActivityStack.java:2376)
at com.android.server.am.ActivityStack.startActivityMayWait(ActivityStack.java:2963)
at com.android.server.am.ActivityManagerService.startActivity(ActivityManagerService.java:2238)
at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:131)
at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:1551)
at android.os.Binder.execTransact(Binder.java:338)
at dalvik.system.NativeStart.run(Native Method)
check file
trace_all_stack.txt_symbol
thread 272: l 12
outgoing transaction 169761: e9157180 from 261:272 to 2772:2784 code 1 flags 10 pri 0 r1 node 31999 size 376:0 data fde00028
incoming transaction 169760: e9c43300 from 850:850 to 261:272 code 3 flags 10 pri 0 r1 node 1090 size 700:8 data fb20030c
----thread stack start: pid 2772 tid 2784, thread name Binder Thread #
[<c1545239>] n_tty_write+0x269/0x5e0
[<c15415c1>] tty_write+0x181/0x2e0
[<c132c212>] vfs_write+0xa2/0x170
[<c132c3b2>] sys_write+0x42/0x70
[<c18fd2e1>] syscall_call+0x7/0xb
[<ffffffff>] 0xffffffff
eip: 4001c276 /system/lib/libc.so
eip: 411c1130 /system/lib/libdvm.so (dvmPlatformInvoke)
eip: 4120e959 /system/lib/libdvm.so (_Z16dvmCallJNIMethodPKjP6JValuePK6MethodP6Thread)
eip: 412b9ff4 /system/lib/libdvm.so
eip: 411d3466 /system/lib/libdvm.so (_Z11dvmMterpStdP6Thread)
eip: 411cfb06 /system/lib/libdvm.so (_Z12dvmInterpretP6ThreadPK6MethodP6JValue)
eip: 4123c562 /system/lib/libdvm.so (_Z14dvmCallMethodVP6ThreadPK6MethodP6ObjectbP6JValuePc)
eip: 41215227 /system/lib/libdvm.so (_ZL18CallBooleanMethodVP7_JNIEnvP8_jobjectP10_jmethodIDPc)
eip: 40203c5a /system/lib/libandroid_runtime.so (_ZN7_JNIEnv17CallBooleanMethodEP8_jobjectP10_jmethodIDz)
eip: 402433f6 /system/lib/libandroid_runtime.so (_ZN11JavaBBinder10onTransactEjRKN7android6ParcelEPS1_j)
eip: 4018a7de /system/lib/libbinder.so (_ZN7android7BBinder8transactEjRKNS_6ParcelEPS1_j)
eip: 40191b35 /system/lib/libbinder.so (_ZN7android14IPCThreadState14executeCommandEi)
eip: 40191ea7 /system/lib/libbinder.so (_ZN7android14IPCThreadState14joinThreadPoolEb)
eip: 4019cdd0 /system/lib/libbinder.so (_ZN7android10PoolThread10threadLoopEv)
eip: 40134984 /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv)
eip: 401fda00 /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv)
eip: 4013547e /system/lib/libutils.so (_ZN13thread_data_t10trampolineEPKS_)
eip: 40014ca2 /system/lib/libc.so (__thread_entry)
eip: 4001dc05 /system/lib/libc.so
----thread stack end: pid 2772 tid 2784, thread name Binder Thread #
^_^ 这样就找到引起这个错误的堆栈了。