对于手机来说,很少有模块是专有的并且没有在 GPL 下获得许可,并且它们的源代码没有随内核源代码一起提供。所以我的问题是,当我添加自定义内核名称或添加上游补丁时,内核的版本魔法发生了变化,它与专有模块的版本不匹配,并且这些模块的版本魔法不匹配,它们不匹配加载。
除了手动保留内核的 vermagic 和模块的 vermagic 之外,是否有任何解决方法?该模块当然与内核兼容,因为它是为它而设计的,只是这种 vermagic 不匹配导致了问题
也没有办法强制加载 Android 内核的模块。你们有人对此有解决方案吗?
最佳答案
您应该避免将模块加载到具有不同版本魔法字符串的内核中。
该模块可能具有与其他内核资源/模块的内部内核接口(interface),这些内核资源/模块可能会因不同的内核版本而中断。这可能真的会破坏您的系统/内核。
如果您想冒险,请使用尽可能接近您的模块版本的内核版本并加载您的模块:
modprobe -f module-name
-f
将绕过 vermagic 检查。
关于android - 加载一个 vermagic 不匹配的 android 内核模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15010642/