¿Cómo saber si el controlador de Linux para el dispositivo de red en tiempo real está integrado en el kernel?

¿Cómo saber si el controlador de Linux para el dispositivo de red en tiempo real está integrado en el kernel?

De aquí:http://www.xenomai.org/index.php/RTnet:Installation_%26_Testing#Debugging_RTnet

El controlador de Linux para el dispositivo de red en tiempo real está integrado en el kernel y bloquea el hardware.

Cuando lo ejecuto rmmod 8139toome dice que el módulo no existe en /proc/modules.

El núcleo es 2.6.38.8 (64 bit).

¿Qué otra información debo proporcionar para la pregunta?


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 

Respuesta1

rmmod 8139toono funciona porque tampoco:

  • La compatibilidad con 8139 está integrada en el kernel y el controlador no se puede descargar porque no es un módulo. En muchos sistemas, hay un /boot/config-2.6.38.8archivo (o similar). Puedes grephacerlo por algo como '8139TOO'. Si ve algo como CONFIG_8139TOO=m, entonces el 8139toocontrolador está compilado como un módulo. Si es así CONFIG_8139TOO=y, entonces el controlador está integrado en el kernel. Si dice algo como # CONFIG_8139TOO is not set, entonces el controlador no se ha compilado entodo.
  • Su tarjeta Ethernet no utiliza el chip RTL8139, por lo que su controlador no está cargado. Debe encontrar el controlador del puerto Ethernet deseado y descargarlo.Aquélen cambio. Si es así lshw, diga sudo lshw | lessy busque eth0: aparecerá el módulo del controlador. Si es así systool, intente sudo systool -c net -A uevent eth0buscar la DRIVER=pieza. El lado derecho debería mostrar el controlador cargado para manejar el dispositivo. dmesg | grep eth0También puede funcionar, pero no es 100% confiable, especialmente si su sistema ha estado encendido por un tiempo (si hay un /var/log/dmesg, es posible que usted también desee hacerlo grep eth0 /var/log/dmesg).

información relacionada