Como saber se o driver do Linux para o dispositivo de rede em tempo real foi embutido no kernel?

4

A partir daqui: link

The Linux driver for the real-time network device was built into the kernel and blocks the hardware.

Quando executo rmmod 8139too , ele diz que o módulo não existe em /proc/modules .

O kernel é 2.6.38.8 (64 bit) .

Que outras informações devo fornecer para a pergunta?

linux-y3pi:~ # uname -a
Linux linux-y3pi 2.6.38.8-12-desktop #2 SMP PREEMPT Fri Jun 1 17:27:16 IST 2012 x86_64 x86_64 x86_64 GNU/Linux

linux-y3pi:~ # ifconfig
eth0      Link encap:Ethernet  HWaddr 00:24:8C:D9:D6:2E  
          inet addr:192.168.16.86  Bcast:192.168.16.255  Mask:255.255.255.0
          inet6 addr: fe80::224:8cff:fed9:d62e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:414 errors:0 dropped:0 overruns:0 frame:0
          TX packets:261 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:118971 (116.1 Kb)  TX bytes:35156 (34.3 Kb)
          Interrupt:17 Base address:0x4000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:68 errors:0 dropped:0 overruns:0 frame:0
          TX packets:68 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:4720 (4.6 Kb)  TX bytes:4720 (4.6 Kb)

linux-y3pi:~ # ethtool -i eth0
driver: r8169
version: 2.3LK-NAPI
firmware-version: 
bus-info: 0000:01:00.0

linux-y3pi:~ # rmmod r8169

linux-y3pi:~ # ethtool eth0
Settings for eth0:
Cannot get device settings: No such device
Cannot get wake-on-lan settings: No such device
Cannot get message level: No such device
Cannot get link status: No such device
No data available

linux-y3pi:~ #  lsmod|grep 8169

linux-y3pi:~ #  lsmod|grep 8139

linux-y3pi:~ #                                              

.config de /usr/src/linux-2.6.38.8

CONFIG_R8169=m
CONFIG_R8169_VLAN=y


CONFIG_8139CP=m
CONFIG_8139TOO=m
#CONFIG_8139TOO_PIO is not set                                                                                                                                                   
#CONFIG_8139TOO_TUNE_TWISTER is not set                                                                                                                                          
CONFIG_8139TOO_8129=y
#CONFIG_8139_OLD_RX_RESET is not set 
    
por Aquarius_Girl 06.06.2012 / 12:43

1 resposta

3

rmmod 8139too não funciona porque:

    O suporte a
  • 8139 está embutido no kernel, e o driver não pode ser descarregado porque não é um módulo. Em muitos sistemas, há um arquivo /boot/config-2.6.38.8 (ou similar). Você pode grep para algo como "8139TOO". Se você vir algo como CONFIG_8139TOO=m , o driver 8139too será compilado como um módulo. Se for CONFIG_8139TOO=y , o driver estará embutido no kernel. Se ele disser algo ao longo das linhas de # CONFIG_8139TOO is not set , o driver não foi compilado em todos .
  • Sua placa ethernet não usa o chip RTL8139, portanto, seu driver não está carregado. Você deve encontrar o driver de sua porta Ethernet pretendida e descarregar aquele . Se você tiver lshw , digamos sudo lshw | less e procure eth0 : o módulo do driver será listado. Se você tiver systool , tente sudo systool -c net -A uevent eth0 e procure a DRIVER= part. O lado direito deve mostrar o driver carregado para manipular o dispositivo. dmesg | grep eth0 também pode funcionar, mas não é 100% confiável, especialmente se o seu sistema estiver ligado por um tempo (se houver um /var/log/dmesg , você pode querer grep eth0 /var/log/dmesg também).
por 06.06.2012 / 12:48