Erro ao instalar o driver ns83820 no Linux 3.2.0 (endereço físico inválido)

Erro ao instalar o driver ns83820 no Linux 3.2.0 (endereço físico inválido)

EmDebian WheezyEstou recebendo o seguinte erro ao carregar o ns83820módulo.

Alguém tem uma ideia de como consertar isso?

6 de outubro 13:15:00 kernel soter: [1.566727] ns83820.c: driver National Semiconductor DP83820 10/100/1000.
6 de outubro 13:15:00 kernel soter: [1.566836] ioremap: endereço físico inválido fffffffff4000000
6 de outubro 13:15:00 kernel soter: [1.566840] ------------[corte aqui]------------
6 de outubro 13:15:00 kernel soter: [1.566858] AVISO: em /build/linux-dJLVDt/linux-3.2.46/arch/x86/mm/ioremap.c:83 __ioremap_caller+0xa9/0x372()
6 de outubro 13:15:00 kernel soter: [1.566863] Nome do hardware: Desconhecido
6 de outubro 13:15:00 kernel soter: [1.566866] Módulos vinculados em: ns83820 (+)
6 de outubro 13:15:00 kernel soter: [1.566874] Pid: 73, comm: modprobe Não contaminado 3.2.0-4-686-pae # 1 Debian 3.2.46-1
6 de outubro 13:15:00 kernel soter: [1.566878] Rastreamento de chamada:
6 de outubro 13:15:00 kernel soter: [1.566896] [] ? warning_slowpath_common+0x68/0x79
6 de outubro 13:15:00 kernel soter: [1.566902] [] ? __ioremap_caller+0xa9/0x372
6 de outubro 13:15:00 kernel soter: [1.566907] [] ? warning_slowpath_null+0xd/0x10
6 de outubro 13:15:00 kernel soter: [1.566912] [] ? __ioremap_caller+0xa9/0x372
6 de outubro 13:15:00 kernel soter: [1.566918] [] ? ioremap_nocache+0xa/0xd
6 de outubro 13:15:00 kernel soter: [1.566927] [] ? ns83820_init_one+0x12b/0x5d4 [ns83820]
6 de outubro 13:15:00 kernel soter: [1.566935] [] ? ns83820_init_one+0x12b/0x5d4 [ns83820]
6 de outubro 13:15:00 kernel soter: [1.566944] [] ? pci_device_probe+0x53/0x9a
6 de outubro 13:15:00 kernel soter: [1.566954] [] ? driver_probe_device+0x10c/0x10c
6 de outubro 13:15:00 kernel soter: [1.566959] [] ? driver_probe_device+0x8c/0x10c
6 de outubro 13:15:00 kernel soter: [1.566964] [] ? __driver_attach+0x40/0x5b
6 de outubro 13:15:00 kernel soter: [1.566970] [] ? barramento_for_each_dev+0x3b/0x5d
6 de outubro 13:15:00 kernel soter: [1.566976] [] ? driver_attach+0x14/0x17
6 de outubro 13:15:00 kernel soter: [1.566981] [] ? driver_probe_device+0x10c/0x10c
6 de outubro 13:15:00 kernel soter: [1.566985] [] ? bus_add_driver+0x86/0x1af
6 de outubro 13:15:00 kernel soter: [1.566997] [] ? kset_find_obj_hinted+0x4c/0x8d
6 de outubro 13:15:00 kernel soter: [1.567001] [] ? 0xf8253fff
6 de outubro 13:15:00 kernel soter: [1.567005] [] ? 0xf8253fff
6 de outubro 13:15:00 kernel soter: [1.567010] [] ? registro_driver+0x73/0xc6
6 de outubro 13:15:00 kernel soter: [1.567014] [] ? 0xf8253fff
6 de outubro 13:15:00 kernel soter: [1.567017] [] ? 0xf8253fff
6 de outubro 13:15:00 kernel soter: [1.567021] [] ? 0xf8253fff
6 de outubro 13:15:00 kernel soter: [1.567026] [] ? __pci_register_driver+0x32/0x86
6 de outubro 13:15:00 kernel soter: [1.567030] [] ? 0xf8253fff
6 de outubro 13:15:00 kernel soter: [1.567033] [] ? 0xf8253fff
6 de outubro 13:15:00 kernel soter: [1.567039] [] ? do_one_initcall+0x66/0x10e
6 de outubro 13:15:00 kernel soter: [1.567043] [] ? 0xf8253fff
6 de outubro 13:15:00 kernel soter: [1.567057] [] ? sys_init_module+0x14c0/0x1677
6 de outubro 13:15:00 kernel soter: [1.567068] [] ? syscall_call+0x7/0xb
6 de outubro 13:15:00 kernel soter: [1.567072] ---[finalizar rastreamento c623892f829e745a]---
6 de outubro 13:15:00 kernel soter: [1.567118] ns83820: análise de 0000:00:08.0 falhou com erro -12

Alguns detalhes:

$ uname --all
Linux bob 3.2.0-4-686-pae #1 SMP Debian 3.2.46-1 i686 GNU/Linux

Responder1

Isso é causado pelo código de compra no 686paicódigo. Ele faz uma verificação para ter certeza de que o endereço (neste caso 0xfffffffff4000000) está dentro do intervalo para o número de bits virtuais. Mas o teste falha para este endereço. Para resolver este problema compilei um kernel 686 não-pae e as unidades foram instaladas.

informação relacionada