[Android稳定性] 第027篇 [问题篇] 数组越界导致Unexpected kernel BRK exception at EL1 8月前查看 评论
[Android稳定性] 第027篇 [问题篇] 数组越界导致Unexpected kernel BRK exception at EL1

**摘要:** 在正常测试过程中,手机电池温度达到35度时,手机进入dump状态。问题分析显示,在`pd_policy_manager`模块的`usbpd_pm_workfunc`函数中出现了内核崩溃。进一步分析发现,`usbpd_pm_sm`函数在处理状态转换时,由于状态数组`pm_str`未包含`PD_PM_STATE_FC2_HOLD`,导致数组越界访问,引发崩溃。解决方案建议在`pm_str`数组中添加`PD_PM_STATE_FC2_HOLD`状态。