在Debian 威兹我在加载模块时收到以下错误ns83820
。
有人知道如何解决这个问题吗?
10 月 6 日 13:15:00 soter 内核:[1.566727] ns83820.c:国家半导体 DP83820 10/100/1000 驱动程序。 10 月 6 日 13:15:00 soter 内核:[1.566836] ioremap:无效的物理地址 fffffffff4000000 10 月 6 日 13:15:00 soter 内核:[ 1.566840] ------------[ 切到这里 ]------------ 10 月 6 日 13:15:00 soter 内核:[ 1.566858] 警告:位于 /build/linux-dJLVDt/linux-3.2.46/arch/x86/mm/ioremap.c:83 __ioremap_caller+0xa9/0x372() 10 月 6 日 13:15:00 soter 内核:[ 1.566863] 硬件名称:未知 10 月 6 日 13:15:00 soter 内核:[ 1.566866] 链接模块:ns83820(+) 10 月 6 日 13:15:00 soter 内核:[ 1.566874] Pid:73,通讯:modprobe 未污染 3.2.0-4-686-pae #1 Debian 3.2.46-1 10 月 6 日 13:15:00 soter 内核:[1.566878] 调用跟踪: 10 月 6 日 13:15:00 soter 内核: [ 1.566896] [] ? warn_slowpath_common+0x68/0x79 10 月 6 日 13:15:00 soter 内核: [ 1.566902] [] ? __ioremap_caller+0xa9/0x372 10 月 6 日 13:15:00 soter 内核: [ 1.566907] [] ? warn_slowpath_null+0xd/0x10 10 月 6 日 13:15:00 soter 内核: [ 1.566912] [] ? __ioremap_caller+0xa9/0x372 10 月 6 日 13:15:00 soter 内核: [ 1.566918] [] ? ioremap_nocache+0xa/0xd 10 月 6 日 13:15:00 soter 内核: [ 1.566927] [] ? ns83820_init_one+0x12b/0x5d4 [ns83820] 10 月 6 日 13:15:00 soter 内核: [ 1.566935] [] ? ns83820_init_one+0x12b/0x5d4 [ns83820] 10 月 6 日 13:15:00 soter 内核: [ 1.566944] [] ? pci_device_probe+0x53/0x9a 10 月 6 日 13:15:00 soter 内核: [ 1.566954] [] ? driver_probe_device+0x10c/0x10c 10 月 6 日 13:15:00 soter 内核: [ 1.566959] [] ? driver_probe_device+0x8c/0x10c 10 月 6 日 13:15:00 soter 内核: [ 1.566964] [] ? __driver_attach+0x40/0x5b 10 月 6 日 13:15:00 soter 内核: [ 1.566970] [] ?总线_for_each_dev+0x3b/0x5d 10 月 6 日 13:15:00 soter 内核: [ 1.566976] [] ?驱动程序附加+0x14/0x17 10 月 6 日 13:15:00 soter 内核: [ 1.566981] [] ? driver_probe_device+0x10c/0x10c 10 月 6 日 13:15:00 soter 内核: [ 1.566985] [] ?总线_添加_驱动程序+0x86/0x1af 10 月 6 日 13:15:00 soter 内核: [ 1.566997] [] ? kset_find_obj_hinted+0x4c/0x8d 10 月 6 日 13:15:00 soter 内核: [ 1.567001] [] ? 0xf8253fff 10 月 6 日 13:15:00 soter 内核: [ 1.567005] [] ? 0xf8253fff 10 月 6 日 13:15:00 soter 内核: [ 1.567010] [] ?驱动程序寄存器+0x73/0xc6 10 月 6 日 13:15:00 soter 内核: [ 1.567014] [] ? 0xf8253fff 10 月 6 日 13:15:00 soter 内核:[ 1.567017] [] ? 0xf8253fff 10 月 6 日 13:15:00 soter 内核: [ 1.567021] [] ? 0xf8253fff 10 月 6 日 13:15:00 soter 内核:[ 1.567026] [] ? __pci_register_driver+0x32/0x86 10 月 6 日 13:15:00 soter 内核: [ 1.567030] [] ? 0xf8253fff 10 月 6 日 13:15:00 soter 内核: [ 1.567033] [] ? 0xf8253fff 10 月 6 日 13:15:00 soter 内核: [ 1.567039] [] ? do_one_initcall+0x66/0x10e 10 月 6 日 13:15:00 soter 内核:[ 1.567043] [] ? 0xf8253fff 10 月 6 日 13:15:00 soter 内核: [ 1.567057] [] ? sys_init_module+0x14c0/0x1677 10 月 6 日 13:15:00 soter 内核: [ 1.567068] [] ?系统调用_调用+0x7/0xb 10 月 6 日 13:15:00 soter 内核:[ 1.567072] ---[ 结束跟踪 c623892f829e745a ]--- 10 月 6 日 13:15:00 soter 内核:[ 1.567118] ns83820: 0000:00:08.0 的探测失败,错误为 -12
一些细节:
$ uname --all
Linux bob 3.2.0-4-686-pae #1 SMP Debian 3.2.46-1 i686 GNU/Linux
答案1
这是在 686 中购买代码引起的帕埃代码。它进行检查以确保地址(在本例中为 0xfffffffff4000000)位于虚拟位数的范围内。但该地址的测试失败。为了解决这个问题,我编译了一个非 pae 686 内核,然后安装了驱动器。