e1000 under VMware doesn't work since 2.6.27.16 - BISECTED
Subsystems (2)
Hello,
we're using virtual machines under VMware with the e1000 emulated network card.
While trying to update the kernel, we had to recogize that the networking doesn't work anymore since kernel 2.6.27.16.
The e1000 kernel module gets loaded and the interface SEEMS to be brought up correctly; however, there's no networking possible afterwards (no hosts in the network reachable by "ping", for example).
I bisected the behaviour to the following commit (commit-ID from the 2.6.27 git repo):
#####################################################################
c6ac5fe00250faed88fb258d7ec91ec99bbe1e95 is first bad commit commit c6ac5fe00250faed88fb258d7ec91ec99bbe1e95
Author: Jesse Brandeburg <[email protected]> Date: Tue Jan 27 16:41:58 2009 -0800
e1000: fix bug with shared interrupt during reset
commit 15b2bee22a0390d951301b53e83df88d0350c499 upstream.
A nasty bug was found where an MTU change (or anything else that
caused a
reset) could race with the interrupt code. The interrupt code was
entered
by a shared interrupt during the MTU change.
This change prevents the interrupt code from running while the
driver is in
the middle of its reset path.
#####################################################################
As this is a relatively common card (and a relatively common usage under VMware), has anyone experienced something similar?
If any more data is needed, let me know.
greets,
jens
David Miller
maintainerFrom: Jens Stroebel <[email protected]>
Date: Fri, 20 Mar 2009 17:41:10 +0100
Quoted 4 lines
Hello,
we're using virtual machines under VMware with the e1000 emulated network card.
Sounds like vmware doesn't emulate the e1000 accurately enough.
Quoted 4 lines
Quoted 2 lines
we're using virtual machines under VMware with the e1000 emulated network card.
Sounds like vmware doesn't emulate the e1000 accurately enough.
I would consider problems with the vmware emulated e1000 to be similar to hardware quirks in some other chip rev supported by the e1000 driver. If a driver change broke e1000 inside a vmware VM then we should probably fix the kernel if possible (although vmware probably wants to improve their emulation too).
- R.
David Miller
maintainerFrom: Roland Dreier <[email protected]>
Date: Fri, 20 Mar 2009 16:03:58 -0700
Quoted 10 lines
Quoted 4 lines
Quoted 2 lines
we're using virtual machines under VMware with the e1000 emulated network card.
Sounds like vmware doesn't emulate the e1000 accurately enough.
I would consider problems with the vmware emulated e1000 to be similar to hardware quirks in some other chip rev supported by the e1000 driver. If a driver change broke e1000 inside a vmware VM then we should probably fix the kernel if possible (although vmware probably wants to improve their emulation too).
If such a "fix" would be to the detriment of real actual hardware, this logic doesn't hold.
The same applies to cases like qemu as well.
David Miller
maintainerFrom: David Miller <[email protected]>
Date: Fri, 20 Mar 2009 16:55:16 -0700 (PDT)
Quoted 14 lines
From: Roland Dreier <[email protected]>
Date: Fri, 20 Mar 2009 16:03:58 -0700Quoted 10 lines
Quoted 4 lines
Quoted 2 lines
we're using virtual machines under VMware with the e1000 emulated network card.
Sounds like vmware doesn't emulate the e1000 accurately enough.
I would consider problems with the vmware emulated e1000 to be similar to hardware quirks in some other chip rev supported by the e1000 driver. If a driver change broke e1000 inside a vmware VM then we should probably fix the kernel if possible (although vmware probably wants to improve their emulation too).
Quoted 4 lines
If such a "fix" would be to the detriment of real actual hardware, this logic doesn't hold.
The same applies to cases like qemu as well.
And I want to amend this to state that I emphatically do not think that a driver maintainer is on the hook to be compatible with all the software emulators out there.
That's rediculious.
Keeping up with the problems on real hardware is difficult enough. At the very least the software emulators can be fixed easily, whereas real hardware not so much.