美文网首页
对系统重启问题进行快速归类

对系统重启问题进行快速归类

作者: 李海洲 | 来源:发表于2017-05-07 20:21 被阅读0次

在mtk online上看到一个FAQ,觉得讲的不错,正好最近项目上也遇到重启的问题,正好借此贴出来
[FAQ14812]
如何快速对系统重启问题进行归类

[DESCRIPTION]
当手机发生系统重启,即导致kernel重启的异常时,会在手机中的/data/aee_exp目录下保存异常重启的db。工程师可以通过GAT的bug report功能,或者直接通过adb pull,把对应的db从手机中抓回来。一般来说,导致kernel重启的异常重启,包括Kernel Panic, Watchdog Timeout, Hardware Reboot这三种类型。

一个完整的Kernel Panic,其db解开来会包含如下的 档案:



[SOLUTION]




最近项目上遇到一个重启问题,详细描述如下:两台机器A,B,A与B蓝牙配对后,A机器上选择蓝牙共享后,B机器屏幕卡住几秒后重启

对于重启问题一般都会有db文件生成,于是在抓取的mtk日志目录下找,没有找到aee_exp这个目录,这个时候去main.log中搜索关键字"aee_exp"看看生成的db文件被mtk打包到哪个目录下了,其实就是一个拷贝的过程,原始路径会生成在data/aee_exp下
在main.log中搜索到如下info:



在MTK日志根目录taglog下找到 \TagLog_2017_0502_150301_HWT\db.fatal.00.HWT,这个db文件正是我们需要的
下面就是分析这个db文件了,使用GAT解析出来的__exp_main.txt中有如下info信息



根据上面的分类方法,属于底层看门狗超时,从SYS_KERNEL_LOG中,可以检索到如下info

问题发生在ipv6_addrconf这个Workqueue,如之前所讲此类异常较为常见,多见于底层频繁irq/bus卡死,导致kicker无法被schedule,从而引起watch dog触发中断,引导系统进入FIQ处理流程,最终call到BUG触发重启。

具体定位到代码层每个问题都不同,这里不针对这个问题分析细细展开,旨在通过本文的介绍能够对重启问题一拿到手快速定位出属于哪种类型,从而采取不同的分析策略

相关文章

网友评论

      本文标题:对系统重启问题进行快速归类

      本文链接:https://www.haomeiwen.com/subject/dzqrzttx.html