Proxmox Intel NUC crashes - Detected Hardware Unit Hang

Problem 

If you are running proxmox (e.g. proxmox v 8.4.14) on a Intel NUC and it sporadically crashes with the following entries in the log:


Dec 24 17:16:04 proxmox1 kernel: e1000e 0000:00:1f.6 eno1: Detected Hardware Unit Hang:
  TDH                  <db>
  TDT                  <d>
  next_to_use          <d>
  next_to_clean        <d9>
buffer_info[next_to_clean]:
  time_stamp           <7245b20af>
  next_to_watch        <db>
  jiffies              <7245b3080>
  next_to_watch.status <0>
MAC Status             <40080083>
PHY Status             <796d>
PHY 1000BASE-T Status  <3800>
PHY Extended Status    <3000>
PCI Status             <10>
Dec 24 17:16:06 proxmox1 kernel: e1000e 0000:00:1f.6 eno1: Detected Hardware Unit Hang:
  TDH                  <db>
  TDT                  <d>
  next_to_use          <d>
  next_to_clean        <d9>
buffer_info[next_to_clean]:
  time_stamp           <7245b20af>
  next_to_watch        <db>
  jiffies              <7245b3840>
  next_to_watch.status <0>
MAC Status             <40080083>
PHY Status             <796d>
PHY 1000BASE-T Status  <3800>
PHY Extended Status    <3000>
PCI Status             <10>
Dec 24 17:16:07 proxmox1 kernel: e1000e 0000:00:1f.6 eno1: NETDEV WATCHDOG: CPU: 4: transmit queue 0 timed out 6480 ms
Dec 24 17:16:07 proxmox1 kernel: e1000e 0000:00:1f.6 eno1: Reset adapter unexpectedly
Dec 24 17:16:07 proxmox1 kernel: vmbr0: port 1(eno1) entered disabled state
Dec 24 17:16:11 proxmox1 kernel: e1000e 0000:00:1f.6 eno1: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
Dec 24 17:16:11 proxmox1 kernel: vmbr0: port 1(eno1) entered blocking state
Dec 24 17:16:11 proxmox1 kernel: vmbr0: port 1(eno1) entered forwarding state
Dec 24 17:16:13 proxmox1 kernel: e1000e 0000:00:1f.6 eno1: Detected Hardware Unit Hang:
  TDH                  <0>
  TDT                  <1>
  next_to_use          <1>
  next_to_clean        <0>
buffer_info[next_to_clean]:
  time_stamp           <7245b4a01>
  next_to_watch        <0>
  jiffies              <7245b5381>
  next_to_watch.status <0>
MAC Status             <40080083>
PHY Status             <796d>
PHY 1000BASE-T Status  <3800>
PHY Extended Status    <3000>
PCI Status             <10>

Solution

Disable NIC offloading of your e1000 or e1000e network interface card NIC using:
 
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/pve/nic-offloading-fix.sh)"
 
 


_ ____________ ____ __________ ___ ____ _ __ __
/ | / / _/ ____/ / __ \/ __/ __/ /___ ____ _____/ (_)___ ____ _ / __ \(_)________ _/ /_ / /__ _____
/ |/ // // / / / / / /_/ /_/ / __ \/ __ `/ __ / / __ \/ __ `/ / / / / / ___/ __ `/ __ \/ / _ \/ ___/
/ /| // // /___ / /_/ / __/ __/ / /_/ / /_/ / /_/ / / / / / /_/ / / /_/ / (__ ) /_/ / /_/ / / __/ /
/_/ |_/___/\____/ \____/_/ /_/ /_/\____/\__,_/\__,_/_/_/ /_/\__, / /_____/_/____/\__,_/_.___/_/\___/_/
/____/
Enhanced version supporting both e1000e and e1000 drivers

ℹ️ Searching for Intel e1000e and e1000 interfaces...
✔️ Found 1 Intel e1000e/e1000 interfaces
✔️ Selected interface: eno1 (e1000e)
ℹ️ Creating systemd service for interface: eno1 (e1000e)...
✔️ Service for eno1 (e1000e) created and enabled!
ℹ️ Service: disable-nic-offload-eno1.service...
ℹ️ Status: Active...
ℹ️ Start on boot: Enabled...
✔️ Intel e1000e/e1000 optimization complete for 1 interface(s)!

ℹ️ Verification commands:...
ethtool -k eno1 # Check offloading status
systemctl status disable-nic-offload-eno1.service # Check service status
root@proxmox1:~#
root@proxmox1:~#


The script creats a new systemd service "disable-nic-offload-eno1.service":

root@proxmox1:~#
root@proxmox1:~# systemctl status disable-nic-offload-eno1.service
● disable-nic-offload-eno1.service - Disable NIC offloading for Intel e1000e interface eno1
     Loaded: loaded (/etc/systemd/system/disable-nic-offload-eno1.service; enabled; preset: enabled)
     Active: active (exited) since Tue 2025-12-30 21:15:19 CET; 3 days 1h ago
   Main PID: 498493 (code=exited, status=0/SUCCESS)
        CPU: 22ms

Dec 30 21:15:18 proxmox1 systemd[1]: Starting disable-nic-offload-eno1.service - Disable NIC offloading for Intel e1000e interface eno1...
Dec 30 21:15:19 proxmox1 systemd[1]: Finished disable-nic-offload-eno1.service - Disable NIC offloading for Intel e1000e interface eno1.
root@proxmox1:~#
root@proxmox1:~#

 


No comments:

Post a Comment

Proxmox Intel NUC crashes - Detected Hardware Unit Hang

Problem  If you are running proxmox (e.g. proxmox v 8.4.14) on a Intel NUC and it sporadically crashes with the following entries in the log...