我修改e1000驅動以后,第一次重新編譯后,insmod失敗,提示invalid module format
根據網上的攻略,將headers下面的Module.symvers檔案,拷貝到e1000驅動目錄下,
再次編譯模塊后,使用modinfo e1000.ko指令查看模塊資訊,發現其中的vermagic欄位仍然和我的內核版本不匹配,但卻可以成功insmod,
請問這是為什么呢?不是必須vermaigc 的值和內核版本一致才能成功insmod么?
另外我做了一個實驗,把拷貝到驅動檔案夾下的Module.symvers檔案改名之后,再改回來,然后再次編譯驅動模塊,insmod又失敗了。看來只有原始headers目錄下那個Module.symbers檔案才能用。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/116147.html
標籤:驅動程序開發區
上一篇:Linux 無法加載新內核
下一篇:kubernetes pod網路
