3
我想編譯並插入r8169 realtek ethernet驅動程序。我的內核版本是儘管EXPORT_SYMBOL模塊插入「模塊中的未知符號」
[email protected]:~$ uname -r
4.2.0-rc3-custom
我在我的本地磁盤中有相同的完整源代碼,它用於安裝當前內核。該模塊編譯成功,當我運行make -C /lib/modules/
使用uname -r /build M=
PWD modules
但是當我插入的模塊,它顯示
[email protected]:~/linux_testing/linux-stable/drivers/net/ethernet/realtek$ sudo insmod r8169.ko
insmod: ERROR: could not insert module r8169.ko: Unknown symbol in module
[email protected]:~/linux_testing/linux-stable/drivers/net/ethernet/realtek$ dmesg
[16717.311216] r8169: Unknown symbol mii_ethtool_gset (err 0)
當我通過源grepped,我發現
EXPORT_SYMBOL(mii_ethtool_gset);
已經出口在mii.c
。所以我想這不是未引用符號的問題。讓我知道如果我必須提供任何其他信息。請幫忙。
您是否將「Module.symvers」複製到構建目錄中? – RedEyed
@ebin:如果mii被編譯爲模塊,在插入模塊之前需要插入它('sudo modprobe mii')。與'modprobe'不同,'insmod'不會自動加載相關模塊。 – Tsyvarev
@Tsyvarev:我在加載mii模塊後試過。現在,它顯示了錯誤'錯誤:無法插入模塊r8169.ko:無效parameters' dmesg的'[8157.140018] r8169:不同意關於符號mii_ethtool_gset版本 [8157.140027] r8169:未知符號mii_ethtool_gset(ERR -22) ' – ebin