Home > it > Detected Tx Unit Hang

Detected Tx Unit Hang

e1000: eth1: e1000_clean_tx_irq: Detected Tx Unit Hang
Tx Queue             <0>
TDH                  <91>
TDT                  <a3>
next_to_use          <a3>
next_to_clean        <90>
buffer_info[next_to_clean]
time_stamp           <33a0d>
next_to_watch        <96>
jiffies              <33f8f>
next_to_watch.status <0>
NETDEV WATCHDOG: eth1: transmit timed out
e1000: eth1: e1000_watchdog: NIC Link is Up 1000 Mbps Full Duplex

Dieser Fehler trat bei starker Netzwerklast auf und verursachte regelmäßige Verbindungsabbrüche.
Nach etwas Recherche fand ich eine Lösung die das Problem beheben sollte:

http://e1000.sourceforge.net/

Leider nicht in meinem Falle, da es nur bei 82573(V|E|L) half.
Auch das deaktivieren von TSO mit ‘ethtool -k eth1 tso off’ brachte nichts.

Mein Chipsatz dagegen (Supermicro Board):

# lspci
04:00.0 Ethernet controller: Intel Corporation 631xESB/632xESB DPT LAN Controller SERDES (rev 01)

Der Chip laut Produktbeschreibung: 82563EB

Da im Debian Kernel 2.6.18-6 nur ein älterer Intel e1000 Treiber ist, machte ich mich also an ein Update.
Treiber runtergeladen: http://downloadcenter.intel.com/
Kernel-Header gezogen:

# apt-get install linux-headers-2.6.18-6-686

verlinkt:

# ln -s /usr/src/linux-headers-2.6.18-6-686 /usr/src/linux

Treiber entpackt und kompilliert:

# tar -zxf  e1000-7.6.15.tar.gz
# cd e1000-7.6.15/src
# make install

Ob es erfolgreich war, kann man gleich prüfen:

# rmmod e1000;modprobe e1000

nun sollte die neue Version aktiv sein:

# ethtool -i eth1
driver: e1000
version: 7.6.15-NAPI

Damit er den Treiber auch beim Booten läd, baut man ihn noch in die initrd ein:

# nano /etc/initramfs-tools/modules
e1000
# update-initramfs -v -u -k all

baut die neue Ramdisk. Nun wird der Treiber gleich beim booten aktiviert.

Habe nun etwa 1TB mit durchschnittlich 95MB/s über das Interface bekommen, ohne einen einzigen Aussetzer.

Categories: it Tags:
  1. Rob
    June 14th, 2008 at 12:32 | #1

    Danke für die Info, werde ich direkt mal testen. Hab das selbe, nervige Problem :(

    Ist das bei Dir nun dauerhaft behoben?

    MfG,
    Rob

  2. June 21st, 2008 at 12:33 | #2

    Läuft perfekt nach dem Update!

    MfG,
    Jürgen

  3. Rik
    February 19th, 2009 at 10:13 | #3

    Found this via Google. I’ve had the same problem with the exact same hardware, however the e1000 driver does not work with my network interfaces. Instead I now use the e1000e drivers, and that fixed it. The main problem I had was virtual machines crashing because their data was on iSCSI. That’s over now.

  4. February 19th, 2009 at 10:34 | #4

    Glad to hear and thanks for the info Rik. I’ve got a horrible performance in my virtual machines, too.

  5. Harald
    August 12th, 2009 at 13:34 | #5

    Hallo,

    hatte gerade genau das gleiche Problem und mit dem Treiber von Intel läufts – danke :)

  1. No trackbacks yet.

Spam protection by WP Captcha-Free