[CentOS] Network cards not recognised

Sat Sep 11 14:37:24 UTC 2010
Gabriel Tabares <gabriel.tabares at roboreus.com>

  Hi,

We have a HP DL385 G6 server that is having an issue. Two of the 4 
network cards are not being recognised by Linux.

We have quite a few other servers with the same hardware and no issues 
but, before I call HP, I would like to make sure that I am not doing 
anything wrong :)

I have tried with the kernel that came with CentOS 5.5 and the updated 
one kernel-2.6.18-194.11.3.

I do an lspci and they're all there:

lspci | grep Eth
03:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5709 
Gigabit Ethernet (rev 20)
03:00.1 Ethernet controller: Broadcom Corporation NetXtreme II BCM5709 
Gigabit Ethernet (rev 20)
41:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5709 
Gigabit Ethernet
41:00.1 Ethernet controller: Broadcom Corporation NetXtreme II BCM5709 
Gigabit Ethernet

ifconfig -a
...
eth0      Link encap:Ethernet  HWaddr D8:D3:85:A7:E4:24
           UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
           RX packets:185 errors:0 dropped:0 overruns:0 frame:0
           TX packets:111 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:16394 (16.0 KiB)  TX bytes:18384 (17.9 KiB)
           Interrupt:217 Memory:fa000000-fa012800

eth1      Link encap:Ethernet  HWaddr D8:D3:85:A7:E4:26
           UP BROADCAST MULTICAST  MTU:1500  Metric:1
           RX packets:0 errors:0 dropped:0 overruns:0 frame:0
           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
           Interrupt:209 Memory:f8000000-f8012800
(no more ethX)
...

ethtool eth2
Settings for eth2:
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

If I do a search on /var/log/messages, all I get is the following
Sep 11 11:38:18 gs-prod-dwh01 kernel: bonding: bond1: Unable to set eth2 
as primary slave as it is not a slave.
(the cards are set as two bonds, bond0 with eth0, eth1 and bond1 with 
eth2, eth3):

lsmod shows that the bnx2 driver is loaded:
  lsmod | grep bnx
bnx2                  216653  0

/etc/modprobe.conf includes the following:
alias eth0 bnx2
alias eth1 bnx2
alias eth2 bnx2
alias eth3 bnx2

I have also tried to set eth2 and eth3 to use the bnx2x in 
/etc/modprobe.conf, but all to no avail.

Any suggestions?

Thanks

Gabriel