Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I recently updated the bnx2 network driver of one server. If I display infomations about the module, it shows me correctly the new version, 2.0.23b.

modinfo bnx2

filename:       /lib/modules/2.6.32-5-amd64/kernel/drivers/net/bnx2.ko
version:        2.0.23b
license:        GPL
description:    Broadcom NetXtreme II BCM5706/5708/5709/5716 Driver
author:         Michael Chan <mchan@broadcom.com>
srcversion:     6E0DD070AB24C11F50B2712
alias:          pci:v000014E4d0000163Csv*sd*bc*sc*i*
alias:          pci:v000014E4d0000163Bsv*sd*bc*sc*i*
alias:          pci:v000014E4d0000163Asv*sd*bc*sc*i*
alias:          pci:v000014E4d00001639sv*sd*bc*sc*i*
alias:          pci:v000014E4d000016ACsv*sd*bc*sc*i*
alias:          pci:v000014E4d000016AAsv*sd*bc*sc*i*
alias:          pci:v000014E4d000016AAsv0000103Csd00003102bc*sc*i*
alias:          pci:v000014E4d0000164Csv*sd*bc*sc*i*
alias:          pci:v000014E4d0000164Asv*sd*bc*sc*i*
alias:          pci:v000014E4d0000164Asv0000103Csd00003106bc*sc*i*
alias:          pci:v000014E4d0000164Asv0000103Csd00003101bc*sc*i*
depends:        
vermagic:       2.6.32-5-amd64 SMP mod_unload modversions 
parm:           disable_msi:Disable Message Signaled Interrupt (MSI) (int)
parm:           stop_on_tx_timeout:For debugging purposes, prevent a chip  reset when a tx timeout occurs (int)

But if I display the version infomation with ethtool, it displays me the old version 2.0.2.

ethtool -i eth0
driver: bnx2
version: 2.0.2
firmware-version: 5.0.11 NCSI 2.0.5
bus-info: 0000:01:00.0

There is only one location /lib/modules/2.6.32-5-amd64/kernel/drivers/net/bnx2.ko where the file bnx2.ko exsits, and that is the new version 2.0.23b.

In /var/log/messages I can see that the old driver is loaded:

...
Oct 14 15:22:02 localhost kernel: [    0.827101] Broadcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.0.2 (Aug 21, 2009)
Oct 14 15:22:02 localhost kernel: [    0.827139] bnx2 0000:01:00.0: PCI INT A -> GSI 36 (level, low) -> IRQ 36
Oct 14 15:22:02 localhost kernel: [    0.827283] bnx2 0000:01:00.0: firmware: requesting bnx2/bnx2-mips-09-5.0.0.j3.fw
Oct 14 15:22:02 localhost kernel: [    0.829565] bnx2 0000:01:00.0: firmware: requesting bnx2/bnx2-rv2p-09-5.0.0.j3.fw
Oct 14 15:22:02 localhost kernel: [    0.832217] eth0: Broadcom NetXtreme II BCM5716 1000Base-T (C0) PCI Express found at mem da000000, IRQ 36, node addr a4:ba:db:43:b1:53
Oct 14 15:22:02 localhost kernel: [    0.832250] bnx2 0000:01:00.1: PCI INT B -> GSI 48 (level, low) -> IRQ 48
Oct 14 15:22:02 localhost kernel: [    0.832373] bnx2 0000:01:00.1: firmware: requesting bnx2/bnx2-mips-09-5.0.0.j3.fw
Oct 14 15:22:02 localhost kernel: [    0.834499] bnx2 0000:01:00.1: firmware: requesting bnx2/bnx2-rv2p-09-5.0.0.j3.fw
...

Any ideas where the system is still getting the old driver from?

share|improve this question
    
if I rmmod bnx2 and insmod /lib/modules/2.6.32-5-amd64/kernel/drivers/net/bnx2.ko after boot it is loading the correct driver. How can I see from which location the driver is loaded on boot? –  markus Oct 17 '11 at 12:13
add comment

1 Answer 1

up vote 1 down vote accepted

You may need to run depmod to update the module dependency maps with any new modules:

#depmod -a
share|improve this answer
    
No dosen't help, still loading the old driver –  markus Oct 17 '11 at 12:51
    
Does the kernel use an initrd to load its modules ? If so, recreate the initrd using mkinitrd. –  adaptr Oct 17 '11 at 13:41
    
Good point. It seems that mkinitrd is deprcated in debain squeeze and I have to use Initramfs. I'm not familar with thoose tools, do you know what to do in debian squeeze? –  markus Oct 17 '11 at 14:30
    
I found it: dpkg-reconfigure linux-image-2.6.32-5-amd64 does the job! –  markus Oct 17 '11 at 14:42
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.