linux-kernel - 如何在内核模块版本魔术中添加 SMP 和 Preempt?
问题描述
我正在尝试构建我的自定义内核模块。它编译成功,但是在插入模块时它给了我错误
insmod: init_module 'helloworld.ko' failed (Exec format error)
并且 dmesg 日志显示:
version magic '3.10.0+ mod_unload ARMv7 p2v8 ' should be '3.10.0 SMP preempt mod_unload ARMv7 p2v8 '
如何在版本魔法中添加“SMP”和“抢占”?
解决方案
检查您用于编译内核模块的内核的内核配置中是否启用CONFIG_PREEMPT
并启用。CONFIG_SMP
在您的内核中启用它,然后使用此配置重新编译您的模块。
推荐阅读
- azure - 在不丢失数据的情况下重新启动 Azure 流分析作业
- react-native - 无法将 weekCalendar 滚动到下/上个月 react-native-calendar
- c++ - GetModuleFileName() 没有给出正确的 DLL 路径
- odata - SAP云平台上的用户身份验证,用于未连接到SAP云的不同SAP系统上的业务用户
- reactjs - 有没有办法将 useSelector() 的结果作为道具传递给另一个组件?
- mysql - 不存在记录的多对多关系查询
- java - 在主函数中创建对象实例
- c++ - 如何在 C++ 中使用原子变量作为互斥锁?
- python - 由于 CUDA 错误,无法从 Keras 模型进行预测
- java - 如何从字符串中取出数字并消除这些数字并存储过滤后的字符串并在java中打印