问题背景:
设备采用全志T3芯片,Android4.4系统。
在对相册等APP进行压测时,通过录像发现设备在21:55左右重启了。
问题分析:
我们抓取了logcat日志,内核日志,trace日志以及tomstorm日志。
logcat日志中我们发现是watchdog杀掉了系统进程导致系统重启的。
05-30 21:54:58.776 W/Watchdog( 2190): *** WATCHDOG KILLING SYSTEM PROCESS: Blocked in monitor com.android.server.am.ActivityManagerService on foreground thread (android.fg), Blocked in handler on WindowManager thread (WindowManager)
05-30 21:54:58.776 W/Watchdog( 2190): foreground thread stack trace:
05-30 21:54:58.776 W/Watchdog( 2190): at com.android.server.am.ActivityManagerService.monitor(ActivityManagerService.java:16230)
05-30 21:54:58.776 W/Watchdog( 2190): at com.android.server.Watchdog$HandlerChecker.run(Watchdog.java:181)
05-30 21:54:58.776 W/Watchdog( 2190): at android.os.Handler.handleCallback(Handler.java:733)
05-30 21:54:58.776 W/Watchdog( 2190): at android.os.Handler.dispatchMessage(Handler.java:95)
05-30 21:54:58.776 W/Watchdog( 2190): at android.os.Looper.loop(Looper.java:136)
05-30 21:54:58.776 W/Watchdog( 2190): at android.os.HandlerThread.run(HandlerThread.java:61)
05-30 21:54:58.776 W/Watchdog( 2190): WindowManager thread stack trace:
05-30 21:54:58.776 W/Watchdog( 2190): at com.android.server.wm.WindowManagerService$H.handleMessage(WindowManagerService.java:7347)
05-30 21:54:58.776 W/Watchdog( 2190): at android.os.Handler.dispatchMessage(Handler.java:102)
05-30 21:54:58.776 W/Watchdog( 2190): at android.os.Looper.loop(Looper.java:136)
05-30 21:54:58.776 W/Watchdog( 2190): at android.os.HandlerThread.run(HandlerThread.java:61)
05-30 21:54:58.776 I/Process ( 2190): Sending signal. PID: 2190 SIG: 9
05-30 21:54:58.776 W/Watchdog( 2190): *** GOODBYE!
05-30 21:54:58.806 D/AndroidRuntime(28984): Shutting down VM
Watchdog字面上是“看门狗”的意思,有做过嵌入式低层的朋友应该知道,为了防止嵌入式系统MCU里的程序因为干扰而跑飞&