atualização do driver e1000 com interfaces perdidas

3

Servidor Intel com 3 placas de rede local.

 Board Mfg             : Intel
 Board Product         : S5000PHB  

06:00.0 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
06:00.1 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
07:00.0 Ethernet controller: Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper) (rev 01)
07:00.1 Ethernet controller: Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper) (rev 01)
08:03.0 Ethernet controller: Intel Corporation 82546GB Gigabit Ethernet Controller (rev 03)
08:03.1 Ethernet controller: Intel Corporation 82546GB Gigabit Ethernet Controller (rev 03)

Controlador anterior:

root@server2[/root]#modinfo  e1000
filename:       /lib/modules/2.6.18-53.el5PAE/kernel/drivers/net/e1000/e1000.ko
version:        7.3.20-k2-NAPI
license:        GPL
description:    Intel(R) PRO/1000 Network Driver
author:         Intel Corporation, <[email protected]>

Baixou a versão 8 e instalou regularmente seguindo o README do driver:

root@server2[/var/tmp/e1000-8.0.35/src]#make install
make -C /lib/modules/2.6.18-53.el5PAE/build SUBDIRS=/var/tmp/e1000-8.0.35/src modules
make[1]: Entering directory '/usr/src/kernels/2.6.18-53.el5-PAE-i686'
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_main.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_82540.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_82542.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_82541.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_82543.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_mac.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_nvm.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_phy.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_manage.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_param.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_ethtool.o
  CC [M]  /var/tmp/e1000-8.0.35/src/kcompat.o
  CC [M]  /var/tmp/e1000-8.0.35/src/e1000_api.o
  LD [M]  /var/tmp/e1000-8.0.35/src/e1000.o
  Building modules, stage 2.
  MODPOST
  CC      /var/tmp/e1000-8.0.35/src/e1000.mod.o
  LD [M]  /var/tmp/e1000-8.0.35/src/e1000.ko
make[1]: Leaving directory '/usr/src/kernels/2.6.18-53.el5-PAE-i686'
gzip -c ../e1000.7 > e1000.7.gz
# remove all old versions of the driver
find /lib/modules/2.6.18-53.el5PAE -name e1000.ko -exec rm -f {} \; || true
find /lib/modules/2.6.18-53.el5PAE -name e1000.ko.gz -exec rm -f {} \; || true
install -D -m 644 e1000.ko /lib/modules/2.6.18-53.el5PAE/kernel/drivers/net/e1000/e1000.ko
/sbin/depmod -a || true
install -D -m 644 e1000.7.gz /usr/share/man/man7/e1000.7.gz
man -c -P'cat > /dev/null' e1000 || true
No manual entry for e1000

Depois disso, correu rmmod e1000 e modprobe e1000 . Todos os arquivos de configuração ainda estão onde estavam. lsmod mostra que o módulo está carregado.

Modinfo mostra nova versão do driver.

root@server2[/]#modinfo  e1000
filename:       /lib/modules/2.6.18-53.el5PAE/kernel/drivers/net/e1000/e1000.ko
version:        8.0.35-NAPI
license:        GPL
description:    Intel(R) PRO/1000 Network Driver
author:         Intel Corporation, <[email protected]>

Mas apenas as interfaces eth0 e eth1 estão agora disponíveis. Então eth2, eth3, eth4 e eth5 se foram agora.

root@server2[/]#service network restart
Shutting down interface bond0:                             [  OK  ]
Shutting down interface bond1:                             [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface bond0:  e1000 device eth2 does not seem to be present, delaying initialization.
                                                           [  OK  ]
Bringing up interface bond1:  e1000 device eth3 does not seem to be present, delaying initialization.
                                                           [  OK  ]
Bringing up interface eth4:  e1000 device eth4 does not seem to be present, delaying initialization.
                                                           [FAILED]

root@server2[/sys/class/net]#ls -la 
total 0
drwxr-xr-x  7 root root 0 Feb 17 17:22 .
drwxr-xr-x 26 root root 0 Feb 17 10:40 ..
drwxr-xr-x  4 root root 0 Feb 17 10:40 bond0
drwxr-xr-x  4 root root 0 Feb 17 10:40 bond1
-rw-r--r--  1 root root 0 Feb 17 10:40 bonding_masters
drwxr-xr-x  3 root root 0 Feb 17 17:22 eth0
drwxr-xr-x  3 root root 0 Feb 17 17:22 eth1
drwxr-xr-x  3 root root 0 Feb 17 10:40 lo

A reinicialização não ajudou. O dmesg não mostra nenhuma tentativa de trazer outras interfaces:

root@server2[/root]#dmesg | grep -i eth
e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
e1000: eth1: e1000_probe: Intel(R) PRO/1000 Network Connection
Ethernet Channel Bonding Driver: v3.1.2 (January 20, 2007)
bonding: bond0: Unable to set eth0 as primary slave as it is not a slave.
bonding: bond0: Adding slave eth0.
bonding: bond0: enslaving eth0 as a backup interface with a down link.
bonding: bond0: Setting eth0 as primary slave.
e1000: eth0: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX/TX
bonding: bond1: Unable to set eth3 as primary slave as it is not a slave.
bonding: bond1: Adding slave eth1.
bonding: bond1: enslaving eth1 as a backup interface with a down link.
bonding: bond1: Unable to set eth3 as primary slave as it is not a slave.
e1000: eth1: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX/TX
bonding: bond0: link status definitely up for interface eth0.
bonding: bond0: making interface eth0 the new active one.
bonding: bond1: link status definitely up for interface eth1.
bonding: bond1: making interface eth1 the new active one.

Eu passei muito tempo tentando fazer isso funcionar. Não me lembro de todas as coisas que tentei. Eu ficaria muito satisfeito com sugestões, dicas ou informações sobre como o sistema traz interfaces de rede e qual poderia ser a razão de não fazer isso agora.

    
por Andrey Kitsa 18.02.2016 / 01:03

0 respostas