前言
android15-6.6 内核编译后,打包镜像、DTB、内核模块到 AOSP,刷入后开机报错。
查看日志发现 init 刚进入第一阶段,正在加载所有内核模块,结果第一个模块就报错,于是中止。
研究发现内核模块的加载是错误码-EACCESS
,查看代码分析发现是内核模块 exports protected symbol
。该符号是定义在 abi_gki_protected_exports_aarch64
文件中的。因此要解决问题可以采用三个方案:
- built-in 内核模块
- 修改该符号表
- 禁用检查
解决方案
先尝试直接内置模块代码,不单独作为模块编译,结果其他模块都报错...估计是模块依赖的问题,要这样一个一个解决的话还不如把所有模块都内置了...于是果断选择方案三:禁用 CONFIG_MODULE_SIG_PROTECT
。
评论 (0)