最近客户反馈一个问题,设备偶现死机。最后解决,在此记录。
目录
一死机的现象
设备死机,或者黑屏任何操作无响应,无法点亮屏幕;或亮屏任何操作无响应。只能断电重启。
二死机的类型
- 逻辑卡顿(block)
-
死循环 (Deadloop)
-
死锁 (Deadlock)
这次根据结果先说结论是 死锁导致死机。
三 死机问题分析
1 死机现象的梳理
客户反馈死机问题,暂无提供可复现的逻辑步骤,属于随机发生。这部使用monkey压测,出现死机行为,分析日志,每次都有不同,无法定位原因。
2 死机日志
1)日志分析一
1 开启了ylog开关后复现,都能捕获日志,有些日志就是普通的日志,有日志捕获死机日常。日志结构如下:
2 左侧文件夹traces就是死机log。分析log如下:
0-android.log日志文件中 看到进程全部挂掉,系统死亡。日志如下
M0164CC 11-21 11:50:59.424 366 366 I SPRDHWComposer: HWCDisplay::present_display <785>: No job to commit, return ERR_NO_JOB
M0164CD 11-21 11:50:59.417 249 249 I ServiceManager: service 'netstats' died
M0164CE 11-21 11:50:59.427 480 5944 D BufferPoolAccessor: bufferpool2 0xa7070110 : 0(0 size) total buffers - 0(0 size) used buffers - 7/10 (recycle/alloc) - 3/9 (fetch/transfer)
M0164CF 11-21 11:50:59.427 480 5939 D BufferPoolAccessor: bufferpool2 0xa706fe10 : 0(0 size) total buffers - 0(0 size) used buffers - 8/10 (recycle/alloc) - 2/9 (fetch/transfer)
M0164D0 11-21 11:50:59.427 480 5908 D BufferPoolAccessor: bufferpool2 0xa7070310 : 0(0 size) total buffers - 0(0 size) used buffers - 13/15 (recycle/alloc) - 2/14 (fetch/transfer)
M0164D1 11-21 11:50:59.427 249 249 I ServiceManager: service 'persistent_data_block' died
M0164D2 11-21 11:50:59.428 249 249 I ServiceManager: service 'netpolicy' died
M0164D3 11-21 11:50:59.428 249 249 I ServiceManager: service 'wifi' died
M0164D4 11-21 11:50:59.428 249 249 I ServiceManager: service 'wifiscanner' died
M0164D5 11-21 11:50:59.428 249 249 I ServiceManager: service 'wifip2p' died
M0164D6 11-21 11:50:59.428 249 249 I ServiceManager: service 'notification' died
M0164D7 11-21 11:50:59.428 249 249 I ServiceManager: service 'devicestoragemonitor' died
M0164D8 11-21 11:50:59.428 249 249 I ServiceManager: service 'location' died
M0164D9 11-21 11:50:59.428 249 249 I ServiceManager: service 'country_detector' died
M0164DA 11-21 11:50:59.428 249 249 I ServiceManager: service 'time_detector' died
M0164DB 11-21 11:50:59.428 249 249 I ServiceManager: service 'search' died
M0164DC 11-21 11:50:59.428 249 249 I ServiceManager: service 'wallpaper' died
M0164DD 11-21 11:50:59.428 249 249 I ServiceManager: service 'audio' died
M0164DE 11-21 11:50:59.429 249 249 I ServiceManager: service 'broadcastradio' died
M0164DF 11-21 11:50:59.429 249 249 I ServiceManager: service 'DockObserver' died
M0164E0 11-21 11:50:59.429 249 249 I ServiceManager: service 'midi' died
M0164E1 11-21 11:50:59.429 249 249 I ServiceManager: service 'adb' died
M0164E2 11-21 11:50:59.429 249 249 I ServiceManager: service 'usb' died
M0164E3 11-21 11:50:59.429 249 249 I ServiceManager: service 'serial' died
M0164E4 11-21 11:50:59.429 249 249 I ServiceManager: service 'hardware_properties' died
M0164E5 11-21 11:50:59.429 480 480 D BufferPoolAccessor: bufferpool2 0xa706fd10 : 0(0 size) total buffers - 0(0 size) used buffers - 5/7 (recycle/alloc) - 2/6 (fetch/transfer)
M0164E6 11-21 11:50:59.429 249 249 I ServiceManager: service 'color_display' died
M0164E7 11-21 11:50:59.429 5930 8561 I AudioTrack: pause
M0164E8 11-21 11:50:59.429 480 480 D BufferPoolAccessor: Destruction - bufferpool2 0xa706fd10 cached: 0/0M, 0/0% in use; allocs: 7, 71% recycled; transfers: 6, 67% unfetced
M0164E9 11-21 11:50:59.429 249 249 I ServiceManager: service 'jobscheduler' died
M0164EA 11-21 11:50:59.429 249 249 I ServiceManager: service 'soundtrigger' died
M0164EB 11-21 11:50:59.429 249 249 I ServiceManager: service 'trust' died
M0164EC 11-21 11:50:59.429 249 249 I ServiceManager: service 'backup' died
M0164ED 11-21 11:50:59.429 249 249 I ServiceManager: service 'appwidget' died
M0164EE 11-21 11:50:59.429 249 249 I ServiceManager: service 'role' died
M0164EF 11-21 11:50:59.429 249 249 I ServiceManager: service 'voiceinteraction' died
M0164F0 11-21 11:50:59.429 249 249 I ServiceManager: service 'diskstats' died
M0164F1 11-21 11:50:59.429 249 249 I ServiceManager: service 'runtime' died
M0164F2 11-21 11:50:59.429 480 5944 D BufferPoolAccessor: bufferpool2 0xa7070210 : 0(0 size) total buffers - 0(0 size) used buffers - 11/15 (recycle/alloc) - 4/14 (fetch/transfer)
M0164F3 11-21 11:50:59.429 249 249 I ServiceManager: service 'network_time_update_service' died
M0164F4 11-21 11:50:59.429 480 5944 D BufferPoolAccessor: Destruction - bufferpool2 0xa7070210 cached: 0/0M, 0/0% in use; allocs: 15, 73% recycled; transfers: 14, 71% unfetced
M0164F5 11-21 11:50:59.429 249 249 I ServiceManager: service 'dreams' died
M0164F6 11-21 11:50:59.429 249 249 I ServiceManager: service 'graphicsstats' died
M0164F7 11-21 11:50:59.429 249 249 I ServiceManager: service 'print' died
M0164F8 11-21 11:50:59.429 249 249 I ServiceManager: service 'companiondevice' died
M0164F9 11-21 11:50:59.429 249 249 I ServiceManager: service 'restrictions' died
M0164FA 11-21 11:50:59.429 249 249 I ServiceManager: service 'media_session' died
M0164FB 11-21 11:50:59.429 249 249 I ServiceManager: service 'media_resource_monitor' died
M0164FC 11-21 11:50:59.429 249 249 I ServiceManager: service 'media_router' died
M0164FD 11-21 11:50:59.429