kernel e1000 module

lievenva

New Member
Dec 26, 2009
13
0
1
Hi,

as I'm faced with regular problems with the e1000-driver for my 82541PI Gigabit Ethernet Controller, I need to use a recent driver from the e1000 dev team, to be able to pass some extra parameters to the module when it loads.

I'm using 2.6.32-1-pve kernel. The included e1000 module is

Code:
cube:~/pve-kernel-2.6.32_2010-01-20# modinfo e1000
filename:       /lib/modules/2.6.32-1-pve/kernel/drivers/net/e1000/e1000.ko
version:        7.3.21-k5-NAPI

I need a e1000 driver version more recent than 8.0.16.

(http://www.mail-archive.com/e1000-devel@lists.sourceforge.net/msg01930.html)

Problem is the latest module doesn't compile against the kernel-headers. I would have installed kernel sources, but these are not available as deb... (I found ftp://pve.proxmox.com/sources/, but installing the source involves manual patching en configuring sources, which I 'd like to avoid - It's somewhat above my skill-level).

So, any thoughts on how to be able to install a recent e1000 driver?

Thanks a lot,

Lieven
 
try to
Code:
aptitude search pve
you need to install the right version of headers kernel you have installed
maybe you need gcc and make package too, try to install with aptitude or apt-get
 
try to
Code:
aptitude search pve
you need to install the right version of headers kernel you have installed
maybe you need gcc and make package too, try to install with aptitude or apt-get

install the following:
Code:
apt-get install pve-headers-2.6.32-1-pve build-essential
 
As I mentioned before, the module doesn't compile against the kernel-headers (several assembler header files are referenced in the c-sources, and these aren't included in the sources, causing compilation to fail)

see attach..

Regards,

Lieven
 

Attachments

  • make.zip
    43.8 KB · Views: 7
I have quad port Intel PRO/1000 server adapter (82571EB). Driver for this adapter is e1000e. I use netdriverinfo.sh script from intel.com. On Centos output from this script is :

eth2 : 26:00.0
Make/Model = Intel Corporation PRO/1000 PT Quad Port LP Server Adapter
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 26:00.0 0
Driver name = e1000e
Driver version = 1.0.2-k2
eth3 : 26:00.1
Make/Model = Intel Corporation PRO/1000 PT Quad Port LP Server Adapter
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 26:00.1 0
Driver name = e1000e
Driver version = 1.0.2-k2
eth4 : 27:00.0
Make/Model = Intel Corporation PRO/1000 PT Quad Port LP Server Adapter
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 27:00.0 0
Driver name = e1000e
Driver version = 1.0.2-k2
eth5 : 27:00.1
Make/Model = Intel Corporation PRO/1000 PT Quad Port LP Server Adapter
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 27:00.1 0
Driver name = e1000e
Driver version = 1.0.2-k2


With centos this adapter is working perfectly, but with proxmox ve 2.6.32 it is not work.

eth2 : 26:00.0
Make/Model =
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth3 : 26:00.1
Make/Model =
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth4 : 27:00.0
Make/Model =
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth5 : 27:00.1
Make/Model =
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2


This is output "dmesg |grep eth"

centos:

eth0: Broadcom NetXtreme II BCM5709 1000Base-T (A1) PCI Express found at mem f2000000, IRQ 98, node addr 001a6435d390
eth1: Broadcom NetXtreme II BCM5709 1000Base-T (A1) PCI Express found at mem f4000000, IRQ 225, node addr 001a6435d392
eth2: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a8:15
eth2: Intel(R) PRO/1000 Network Connection
eth2: MAC: 0, PHY: 4, PBA No: d72468-003
eth3: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a8:14
eth3: Intel(R) PRO/1000 Network Connection
eth3: MAC: 0, PHY: 4, PBA No: d72468-003
eth4: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a8:17
eth4: Intel(R) PRO/1000 Network Connection
eth4: MAC: 0, PHY: 4, PBA No: d72468-003
eth5: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a8:16
eth5: Intel(R) PRO/1000 Network Connection
eth5: MAC: 0, PHY: 4, PBA No: d72468-003
eth6: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:9e:e5
eth6: Intel(R) PRO/1000 Network Connection
eth6: MAC: 0, PHY: 4, PBA No: d72468-003
eth7: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:9e:e4
eth7: Intel(R) PRO/1000 Network Connection
eth7: MAC: 0, PHY: 4, PBA No: d72468-003
eth8: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:9e:e7
eth8: Intel(R) PRO/1000 Network Connection
eth8: MAC: 0, PHY: 4, PBA No: d72468-003
eth9: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:9e:e6
eth9: Intel(R) PRO/1000 Network Connection
eth9: MAC: 0, PHY: 4, PBA No: d72468-003


proxmox:

0000:26:00.0: eth0: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a5:01
0000:26:00.0: eth0: Intel(R) PRO/1000 Network Connection
0000:26:00.0: eth0: MAC: 0, PHY: 4, PBA No: d72468-003
eth1: Broadcom NetXtreme II BCM5709 1000Base-T (A1) PCI Express found at mem f2000000, IRQ 16, node addr 00:1a:64:db:03:ec
eth2: Broadcom NetXtreme II BCM5709 1000Base-T (A1) PCI Express found at mem f4000000, IRQ 17, node addr 00:1a:64:db:03:ee
udev: renamed network interface eth2 to eth1
0000:26:00.1: eth2: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a5:00
0000:26:00.1: eth2: Intel(R) PRO/1000 Network Connection
0000:26:00.1: eth2: MAC: 0, PHY: 4, PBA No: d72468-003
0000:27:00.0: eth3: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a5:03
0000:27:00.0: eth3: Intel(R) PRO/1000 Network Connection
0000:27:00.0: eth3: MAC: 0, PHY: 4, PBA No: d72468-003
0000:27:00.1: eth4: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a5:02
0000:27:00.1: eth4: Intel(R) PRO/1000 Network Connection
0000:27:00.1: eth4: MAC: 0, PHY: 4, PBA No: d72468-003
0000:14:00.0: eth5: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a9:b5
0000:14:00.0: eth5: Intel(R) PRO/1000 Network Connection
0000:14:00.0: eth5: MAC: 0, PHY: 4, PBA No: d72468-003
0000:14:00.1: eth6: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a9:b4
0000:14:00.1: eth6: Intel(R) PRO/1000 Network Connection
0000:14:00.1: eth6: MAC: 0, PHY: 4, PBA No: d72468-003
0000:15:00.0: eth7: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a9:b7
0000:15:00.0: eth7: Intel(R) PRO/1000 Network Connection
0000:15:00.0: eth7: MAC: 0, PHY: 4, PBA No: d72468-003
0000:15:00.1: eth8: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a9:b6
0000:15:00.1: eth8: Intel(R) PRO/1000 Network Connection
0000:15:00.1: eth8: MAC: 0, PHY: 4, PBA No: d72468-003
udev: renamed network interface eth8 to eth9
udev: renamed network interface eth7 to eth8
udev: renamed network interface eth3 to eth4
udev: renamed network interface eth6 to eth7
udev: renamed network interface eth5_rename to eth6
udev: renamed network interface eth2_rename to eth3
udev: renamed network interface eth1_rename to eth0
udev: renamed network interface eth0_rename to eth2
udev: renamed network interface eth4_rename to eth5
bnx2: eth0: using MSI
ADDRCONF(NETDEV_UP): eth0: link is not ready
device eth1 entered promiscuous mode
bnx2: eth1: using MSI
ADDRCONF(NETDEV_UP): eth1: link is not ready
device eth8 entered promiscuous mode
0000:15:00.0: eth8: MSI interrupt test failed!
0000:15:00.0: eth8: MSI interrupt test failed, using legacy interrupt.
ADDRCONF(NETDEV_UP): eth8: link is not ready
bnx2: eth0 NIC Copper Link is Up, 1000 Mbps full duplex, receive & transmit flow control ON
ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
bnx2: eth1 NIC Copper Link is Up, 1000 Mbps full duplex, receive & transmit flow control ON
ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
vmbr0: port 1(eth1) entering forwarding state
device eth7 entered promiscuous mode
0000:14:00.1: eth7: Failed to initialize MSI interrupts. Falling back to legacy interrupts.
0000:14:00.1: eth7: Interrupt allocation failed
ADDRCONF(NETDEV_UP): eth7: link is not ready
device eth6 entered promiscuous mode
0000:14:00.0: eth6: Failed to initialize MSI interrupts. Falling back to legacy interrupts.
0000:14:00.0: eth6: Interrupt allocation failed
ADDRCONF(NETDEV_UP): eth6: link is not ready
device eth2 entered promiscuous mode
0000:26:00.0: eth2: MSI interrupt test failed!
0000:26:00.0: eth2: MSI interrupt test failed, using legacy interrupt.
ADDRCONF(NETDEV_UP): eth2: link is not ready
eth0: no IPv6 routers present
eth1: no IPv6 routers present


Driver version is 1.0.2-k2. I tried to compile the last version of this driver but with no success. I have installed headers for 2.6.32 kernel.

dpkg -l |grep 2.6.32
ii proxmox-ve-2.6.32 1.5-4 The Proxmox Virtual Environment
ii pve-headers-2.6.32-1-pve 2.6.32-4 The Proxmox PVE Kernel Headers
ii pve-kernel-2.6.32-1-pve 2.6.32-4 The Proxmox PVE Kernel Image

This is output from make:

make -C /lib/modules/2.6.32-1-pve/build SUBDIRS=/root/e1000e-1.1.2/src modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.32-1-pve'
CC [M] /root/e1000e-1.1.2/src/netdev.o
In file included from /usr/include/asm/types.h:4,
from include/linux/types.h:4,
from include/linux/prefetch.h:13,
from include/linux/list.h:6,
from include/linux/module.h:9,
from /root/e1000e-1.1.2/src/netdev.c:29:
include/asm-generic/int-ll64.h:11:29: error: asm/bitsperlong.h: No such file or directory
In file included from include/linux/list.h:6,
from include/linux/module.h:9,
from /root/e1000e-1.1.2/src/netdev.c:29:
include/linux/prefetch.h:14:27: error: asm/processor.h: No such file or directory
include/linux/prefetch.h:15:23: error: asm/cache.h: No such file or directory
In file included from include/linux/module.h:9,
from /root/e1000e-1.1.2/src/netdev.c:29:
include/linux/list.h:7:24: error: asm/system.h: No such file or directory
In file included from include/linux/kernel.h:11,
from include/linux/cache.h:4,
from include/linux/time.h:7,
from include/linux/stat.h:60,
from include/linux/module.h:10,
from /root/e1000e-1.1.2/src/netdev.c:29:
include/linux/linkage.h:5:25: error: asm/linkage.h: No such file or directory
In file included from include/linux/kernel.h:15,
from include/linux/cache.h:4,
from include/linux/time.h:7,
from include/linux/stat.h:60,
from include/linux/module.h:10,
from /root/e1000e-1.1.2/src/netdev.c:29:
include/linux/bitops.h:17:24: error: asm/bitops.h: No such file or directory
In file included from include/linux/kernel.h:15,
from include/linux/cache.h:4,
from include/linux/time.h:7,
.
.
.
make[2]: *** [/root/e1000e-1.1.2/src/netdev.o] Error 1
make[1]: *** [_module_/root/e1000e-1.1.2/src] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.32-1-pve'
make: *** [default] Error 2
 
I just uploaded a fixed version of the 'pve-headers-2.6.32-1-pve' package. Please can you update and test?
 
dmesg |grep e1000e
e1000e: Intel(R) PRO/1000 Network Driver - 1.1.2-NAPI
e1000e: Copyright(c) 1999 - 2009 Intel Corporation.
e1000e 0000:26:00.0: PCI INT B -> GSI 85 (level, low) -> IRQ 85
e1000e 0000:26:00.0: setting latency timer to 64
e1000e 0000:26:00.0: irq 104 for MSI/MSI-X
e1000e 0000:26:00.1: PCI INT A -> GSI 81 (level, low) -> IRQ 81
e1000e 0000:26:00.1: setting latency timer to 64
e1000e 0000:26:00.1: irq 105 for MSI/MSI-X
e1000e 0000:27:00.0: PCI INT B -> GSI 89 (level, low) -> IRQ 89
e1000e 0000:27:00.0: setting latency timer to 64
e1000e 0000:27:00.0: irq 106 for MSI/MSI-X
e1000e 0000:27:00.1: PCI INT A -> GSI 85 (level, low) -> IRQ 85
e1000e 0000:27:00.1: setting latency timer to 64
e1000e 0000:27:00.1: irq 107 for MSI/MSI-X
e1000e 0000:14:00.0: PCI INT B -> GSI 49 (level, low) -> IRQ 49
e1000e 0000:14:00.0: setting latency timer to 64
e1000e 0000:14:00.0: irq 108 for MSI/MSI-X
e1000e 0000:14:00.1: PCI INT A -> GSI 45 (level, low) -> IRQ 45
e1000e 0000:14:00.1: setting latency timer to 64
e1000e 0000:14:00.1: irq 109 for MSI/MSI-X
e1000e 0000:15:00.0: PCI INT B -> GSI 53 (level, low) -> IRQ 53
e1000e 0000:15:00.0: setting latency timer to 64
e1000e 0000:15:00.0: irq 110 for MSI/MSI-X
e1000e 0000:15:00.1: PCI INT A -> GSI 49 (level, low) -> IRQ 49
e1000e 0000:15:00.1: setting latency timer to 64
e1000e 0000:15:00.1: irq 111 for MSI/MSI-X
e1000e 0000:15:00.0: irq 110 for MSI/MSI-X
e1000e 0000:26:00.0: irq 104 for MSI/MSI-X

dmesg |grep eth

Driver 'rtc_cmos' needs updating - please use bus_type methods
0000:26:00.0: eth0: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a5:01
0000:26:00.0: eth0: Intel(R) PRO/1000 Network Connection
0000:26:00.0: eth0: MAC: 1, PHY: 4, PBA No: d72468-003
eth1: Broadcom NetXtreme II BCM5709 1000Base-T (A1) PCI Express found at mem f2000000, IRQ 16, node addr 00:1a:64:db:03:ec
eth2: Broadcom NetXtreme II BCM5709 1000Base-T (A1) PCI Express found at mem f4000000, IRQ 17, node addr 00:1a:64:db:03:ee
udev: renamed network interface eth2_rename to eth1
0000:26:00.1: eth2: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a5:00
0000:26:00.1: eth2: Intel(R) PRO/1000 Network Connection
0000:26:00.1: eth2: MAC: 1, PHY: 4, PBA No: d72468-003
0000:27:00.0: eth3: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a5:03
0000:27:00.0: eth3: Intel(R) PRO/1000 Network Connection
0000:27:00.0: eth3: MAC: 1, PHY: 4, PBA No: d72468-003
0000:27:00.1: eth4: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a5:02
0000:27:00.1: eth4: Intel(R) PRO/1000 Network Connection
0000:27:00.1: eth4: MAC: 1, PHY: 4, PBA No: d72468-003
0000:14:00.0: eth5: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a9:b5
0000:14:00.0: eth5: Intel(R) PRO/1000 Network Connection
0000:14:00.0: eth5: MAC: 1, PHY: 4, PBA No: d72468-003
0000:14:00.1: eth6: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a9:b4
0000:14:00.1: eth6: Intel(R) PRO/1000 Network Connection
0000:14:00.1: eth6: MAC: 1, PHY: 4, PBA No: d72468-003
0000:15:00.0: eth7: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a9:b7
0000:15:00.0: eth7: Intel(R) PRO/1000 Network Connection
0000:15:00.0: eth7: MAC: 1, PHY: 4, PBA No: d72468-003
0000:15:00.1: eth8: (PCI Express:2.5GB/s:Width x4) 00:15:17:80:a9:b6
0000:15:00.1: eth8: Intel(R) PRO/1000 Network Connection
0000:15:00.1: eth8: MAC: 1, PHY: 4, PBA No: d72468-003
udev: renamed network interface eth8 to eth9
udev: renamed network interface eth7 to eth8
udev: renamed network interface eth4_rename to eth5
udev: renamed network interface eth2_rename to eth3
udev: renamed network interface eth6 to eth7
udev: renamed network interface eth1_rename to eth0
udev: renamed network interface eth0_rename to eth2
udev: renamed network interface eth5_rename to eth6
udev: renamed network interface eth3_rename to eth4
bnx2: eth0: using MSI
ADDRCONF(NETDEV_UP): eth0: link is not ready
device eth1 entered promiscuous mode
bnx2: eth1: using MSI
ADDRCONF(NETDEV_UP): eth1: link is not ready
bnx2: eth0 NIC Copper Link is Up, 1000 Mbps full duplex, receive & transmit flow control ON
ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
device eth8 entered promiscuous mode
0000:15:00.0: eth8: MSI interrupt test failed!
0000:15:00.0: eth8: MSI interrupt test failed, using legacy interrupt.
ADDRCONF(NETDEV_UP): eth8: link is not ready
bnx2: eth1 NIC Copper Link is Up, 1000 Mbps full duplex, receive & transmit flow control ON
ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
vmbr0: port 1(eth1) entering forwarding state
device eth7 entered promiscuous mode
0000:14:00.1: eth7: Failed to initialize MSI interrupts. Falling back to legacy interrupts.
0000:14:00.1: eth7: Interrupt allocation failed
ADDRCONF(NETDEV_UP): eth7: link is not ready
device eth6 entered promiscuous mode
0000:14:00.0: eth6: Failed to initialize MSI interrupts. Falling back to legacy interrupts.
0000:14:00.0: eth6: Interrupt allocation failed
ADDRCONF(NETDEV_UP): eth6: link is not ready
device eth2 entered promiscuous mode
0000:26:00.0: eth2: MSI interrupt test failed!
0000:26:00.0: eth2: MSI interrupt test failed, using legacy interrupt.
ADDRCONF(NETDEV_UP): eth2: link is not ready
eth0: no IPv6 routers present
eth1: no IPv6 routers present


ethtool eth3|grep Link
Link detected: no

Yes, this is with latest driver
 
Yes, this is with latest driver

Sorry, but I am a bit confused. You post some logs without additional infos - one is with a e1000 driver, the other log includes messages from bnx2 driver. Please can you explain what you are exactly do, and who genartes those logs? Is it wrongly detected as bnx2? What is the pci id of that card (lspci -n).
 
hi,

I compiled the newest version driver for the e1000e, but whe i try loaded it by: modprobe e1000e it loaded only old driver (from kernel) how i can delete old driver and load new? i have acces to server only by internet (e1000 network card)

pve-manager: 1.5-5 (pve-manager/1.5/4627)
running kernel: 2.6.32-1-pve
proxmox-ve-2.6.32: 1.5-4
pve-kernel-2.6.32-1-pve: 2.6.32-4
pve-kernel-2.6.24-10-pve: 2.6.24-21
pve-kernel-2.6.18-1-pve: 2.6.18-4
qemu-server: 1.1-11
pve-firmware: 1.0-3
libpve-storage-perl: 1.0-8
vncterm: 0.9-2
vzctl: 3.0.23-1pve8
vzdump: 1.2-5
vzprocps: 2.0.11-1dso2
vzquota: 3.0.11-1
pve-qemu-kvm: 0.11.1-2
ksm-control-daemon: 1.0-3
 
I compiled the newest version driver for the e1000e, but whe i try loaded it by: modprobe e1000e it loaded only old driver (from kernel) how i can delete old driver and load new? i have acces to server only by internet (e1000 network card)

I guess you need to replace the binary in /lib/modules/2.6.32-1-pve/kernel/drivers/net/e1000e/e1000e.ko. Then it is best to reboot (although a bit dangerous if you do not have any console access?).
 
Hi dietmar,

my hardware is ibm system x3850 m2. On board i have two broadcom (bnx2) eth. adapters. Broadcom adapters are perfect. I have problem with quad ports intel adapters. I have two quad ports intel adapters.

lspci -n
00:1c.0 0604: 8086:27d0 (rev 01)
00:1d.0 0c03: 8086:27c8 (rev 01)
00:1d.1 0c03: 8086:27c9 (rev 01)
00:1d.2 0c03: 8086:27ca (rev 01)
00:1d.3 0c03: 8086:27cb (rev 01)
00:1d.7 0c03: 8086:27cc (rev 01)
00:1e.0 0604: 8086:244e (rev e1)
00:1f.0 0601: 8086:27b8 (rev 01)
00:1f.1 0101: 8086:27df (rev 01)
01:00.0 0300: 1002:515e (rev 02)
02:00.0 0200: 14e4:1639 (rev 01)
02:00.1 0200: 14e4:1639 (rev 01)
03:00.0 0604: 1014:0308 (rev 01)
04:00.0 0104: 1000:0060 (rev 03)
05:00.0 0604: 1014:0308 (rev 01)
06:00.0 0100: 1000:0058 (rev 02)
0b:00.0 0604: 1014:0308 (rev 01)
11:00.0 0604: 1014:0308 (rev 01)
12:00.0 0604: 111d:8018 (rev ff)
13:00.0 0604: 111d:8018 (rev ff)
13:01.0 0604: 111d:8018 (rev ff)
14:00.0 0200: 8086:10bc (rev ff)
14:00.1 0200: 8086:10bc (rev ff)
15:00.0 0200: 8086:10bc (rev ff)
15:00.1 0200: 8086:10bc (rev ff)

17:00.0 0604: 1014:0308 (rev 01)
18:00.0 0100: 1000:0058 (rev 02)
1d:00.0 0604: 1014:0308 (rev 01)
23:00.0 0604: 1014:0308 (rev 01)
24:00.0 0604: 111d:8018 (rev 04)
25:00.0 0604: 111d:8018 (rev 04)
25:01.0 0604: 111d:8018 (rev 04)
26:00.0 0200: 8086:10bc (rev 06)
26:00.1 0200: 8086:10bc (rev 06)
27:00.0 0200: 8086:10bc (rev 06)
27:00.1 0200: 8086:10bc (rev 06)

29:00.0 0604: 1014:0308 (rev 01)

I compiled kernel 2.6.32.7 from kernel.org and one of adapters go up.



ethtool eth2-eth5 show me Link detected: yes. I have ping to other hosts.
ethtool eth6-eth9 Link detected: no

Output from ./netdriverinfo.sh

eth0 : 02:00.0
Make/Model = IBM Device 037c
Ethernet controller = Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
VenIDDevID = 14e4:1639
Driver name = bnx2
Driver version = 2.0.2
eth1 : 02:00.1
Make/Model = IBM Device 037c
Ethernet controller = Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
VenIDDevID = 14e4:1639
Driver name = bnx2
Driver version = 2.0.2
eth6 : 14:00.0
Make/Model =
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth7 : 14:00.1
Make/Model =
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth8 : 15:00.0
Make/Model =
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth9 : 15:00.1
Make/Model =
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth2 : 26:00.0
Make/Model = Intel Corporation PRO/1000 PT Quad Port LP Server Adapter
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth3 : 26:00.1
Make/Model = Intel Corporation PRO/1000 PT Quad Port LP Server Adapter
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth4 : 27:00.0
Make/Model = Intel Corporation PRO/1000 PT Quad Port LP Server Adapter
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2
eth5 : 27:00.1
Make/Model = Intel Corporation PRO/1000 PT Quad Port LP Server Adapter
Ethernet controller = Intel Corporation 82571EB Gigabit Ethernet Controller
VenIDDevID = 8086:10bc
Driver name = e1000e
Driver version = 1.0.2-k2


Driver version = 1.0.2-k2 - this is a original driver from kernel.
 
I guess you need to replace the binary in /lib/modules/2.6.32-1-pve/kernel/drivers/net/e1000e/e1000e.ko. Then it is best to reboot (although a bit dangerous if you do not have any console access?).


>lsmod | grep -i e1000
e1000 159351 0
e1000e 133150 0

>dmesg | grep -i e1000
e1000e: Intel(R) PRO/1000 Network Driver - 1.0.2-k2
e1000e: Copyright (c) 1999-2008 Intel Corporation.
e1000e 0000:00:19.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20
e1000e 0000:00:19.0: setting latency timer to 64
e1000e 0000:00:19.0: irq 29 for MSI/MSI-X
e1000e 0000:00:19.0: irq 29 for MSI/MSI-X
e1000e 0000:00:19.0: irq 29 for MSI/MSI-X
e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: None

>ls -la /lib/modules/2.6.32-1-pve/kernel/drivers/net/e1000e/e1000e.ko
-rw-r--r-- 1 root root 205069 Feb 3 00:36 /lib/modules/2.6.32-1-pve/kernel/drivers/net/e1000e/e1000e.ko

>modinfo e1000e|grep version
version: 1.1.2-NAPI
srcversion: F3AE734BF9B60BE9BE2460E
vermagic: 2.6.32-1-pve SMP mod_unload modversions

>wget http://sourceforge.net/projects/e1000/files/e1000e%20stable/1.1.2/e1000e-1.1.2.tar.gz/download
>tar xvzf e1000e-1.1.2.tar.gz
>cd e1000e-1.1.2/src
>make install
make -C /lib/modules/2.6.32-1-pve/build SUBDIRS=/root/e1000e-1.1.2/src modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.32-1-pve'
CC [M] /root/e1000e-1.1.2/src/netdev.o
CC [M] /root/e1000e-1.1.2/src/ethtool.o
CC [M] /root/e1000e-1.1.2/src/param.o
CC [M] /root/e1000e-1.1.2/src/e1000_82571.o
CC [M] /root/e1000e-1.1.2/src/e1000_ich8lan.o
CC [M] /root/e1000e-1.1.2/src/e1000_80003es2lan.o
CC [M] /root/e1000e-1.1.2/src/e1000_mac.o
CC [M] /root/e1000e-1.1.2/src/e1000_nvm.o
CC [M] /root/e1000e-1.1.2/src/e1000_phy.o
CC [M] /root/e1000e-1.1.2/src/e1000_manage.o
CC [M] /root/e1000e-1.1.2/src/kcompat.o
LD [M] /root/e1000e-1.1.2/src/e1000e.o
Building modules, stage 2.
MODPOST 1 modules
CC /root/e1000e-1.1.2/src/e1000e.mod.o
LD [M] /root/e1000e-1.1.2/src/e1000e.ko
make[1]: Leaving directory `/usr/src/linux-headers-2.6.32-1-pve'
gzip -c ../e1000e.7 > e1000e.7.gz
# remove all old versions of the driver
find /lib/modules/2.6.32-1-pve -name e1000e.ko -exec rm -f {} \; || true
find /lib/modules/2.6.32-1-pve -name e1000e.ko.gz -exec rm -f {} \; || true
install -D -m 644 e1000e.ko /lib/modules/2.6.32-1-pve/kernel/drivers/net/e1000e/e1000e.ko
/sbin/depmod -a || true
install -D -m 644 e1000e.7.gz /usr/share/man/man7/e1000e.7.gz
man -c -P'cat > /dev/null' e1000e || true
e1000e.

>ls -la /lib/modules/2.6.32-1-pve/kernel/drivers/net/e1000e/e1000e.ko
-rw-r--r-- 1 root root 205069 Feb 3 08:53 /lib/modules/2.6.32-1-pve/kernel/drivers/net/e1000e/e1000e.ko

>modprobe e1000e
>lsmod | grep -i e1000
e1000 159351 0
e1000e 133150 0

>dmesg | grep -i e1000
e1000e: Intel(R) PRO/1000 Network Driver - 1.0.2-k2
e1000e: Copyright (c) 1999-2008 Intel Corporation.
e1000e 0000:00:19.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20
e1000e 0000:00:19.0: setting latency timer to 64
e1000e 0000:00:19.0: irq 29 for MSI/MSI-X
e1000e 0000:00:19.0: irq 29 for MSI/MSI-X
e1000e 0000:00:19.0: irq 29 for MSI/MSI-X
e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: None

After run >rmmod e1000e and reboot manually by intel AMT function, old driver return.
With driver to e1000 which is not currenty use is the same story. I can unload e1000 >rmmod e1000
and load again >modprobe e1000 and old driver appears again.

Please help :)
 
Hi dietmar,

i testing with one eth. adpater and everything is OK. With 2 cards i see in dmesg DMA errors when the second card is trying to be setted up
 
i testing with one eth. adpater and everything is OK. With 2 cards i see in dmesg DMA errors when the second card is trying to be setted up

Maybe you can report that error to the intel developers directly? Maybe they have an idea.
 
Hi dietmar,

I testing with one eth. adapter and various kernels. With proxmox kernel 2.6.32-1 not work. With kernel 2.6.32.7 from kernel.org this adapter work perfect, but only one card. On other pcie slots i have 2 sas adapters and they work without problems.
 
With kernel 2.6.32.7 from kernel.org this adapter work perfect, but only one card.

Please can you report the bug to the upstream authors directly? I can't reproduce the bug here, so it is difficult to debug for me.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!