11月前
评论
[Android稳定性] 第002篇 [原理篇] subsystem ramdump的原理介绍
本文介绍了SSR(子系统重启)功能,它是高通的一项特性,允许在子系统崩溃时重启该子系统而不影响整个系统。文章还详细说明了如何启用SSR、抓取子系统RAM dump日志,并介绍了小米对这一功能的改造,即将日志分类整理。此外,文章提供了制造子系统崩溃的指令方法和测试用例,以及如何查看生成的RAM dump日志。
11月前
评论
[Android稳定性] 第001篇 [方法篇] 高通Android平台稳定性分析介绍
本文主要介绍了Linux kernel crash分析的基础知识点,包括高通pmic的几种复位类型、解析dump的工具、Linux ramdump parser的使用、TRACE32工具的应用,以及系统异常的分类及原因。作者详细阐述了每种复位类型的特点和适用场景,列举了多种解析dump的工具及其输出,并通过图表和图片展示了Linux ramdump parser和TRACE32的使用方法。同时,文章还简要介绍了系统异常的分类及原因,为研发人员提供了解决底层稳定性问题的参考。
2024-11-12
评论
[Android稳定性] 第043篇 [问题篇] Unable to handle kernel NULL pointer dereference at virtual address
在测试版本V816.0.24.8.26.UGUCNXM的稳定版挂测中,出现了大量的空指针引用错误。通过离线解析工具分析dump文件,发现问题的核心在于对NULL指针的引用。具体表现为在`mutex_lock`函数中尝试对一个来自`iocb->ki_filp->private_data`的NULL变量加锁,而这个变量是从`struct file`结构体中获取的。进一步检查发现,这与`/proc/hwinfo`节点有关,当尝试读取这个节点时,会导致手机死机。此节点是早期指纹需求所创建,目前已无实际用途,因此解决方案建议移除该节点。