🛠️ Risolvere i timeout di rete su schede Realtek r8169: il ruolo di ASPM

Introduzione

Se stai usando una scheda di rete Realtek r8169 su Linux (Debian, Proxmox, Ubuntu), potresti aver incontrato questo messaggio nel log di sistema:

Codice

NETDEV WATCHDOG: transmit queue 0 timed out
ASPM disabled on Tx timeout

Questo errore indica un problema critico di trasmissione che può causare instabilità di rete, perdita di pacchetti e reset del link. In questo articolo analizziamo la causa, il ruolo di ASPM e come risolvere il problema in modo permanente.

Cos’è ASPM?

ASPM (Active State Power Management) è una tecnologia PCI Express che riduce il consumo energetico dei dispositivi quando non sono attivamente in uso. Gestisce lo stato del link PCIe tra la scheda e il chipset, passando da:

  • L0: attivo
  • L1: inattivo ma pronto
  • L2: quasi spento

Su alcune schede Realtek, ASPM può interferire con la trasmissione, causando timeout e instabilità.

Sintomi del problema

  • Messaggi NETDEV WATCHDOG nel log kernel
  • Disconnessioni di rete intermittenti
  • Reset del link
  • Prestazioni degradate sotto carico

Soluzione passo-passo

1. Disattiva offload sulla scheda

bash

ethtool -K enp6s0 gso off gro off tso off tx off rx off

2. Crea un servizio systemd persistente

bash

cat <<EOF > /etc/systemd/system/disable-nic-offload-enp6s0.service
[Unit]
Description=Disable NIC offloading for Realtek r8169 interface enp6s0
After=network.target

[Service]
Type=oneshot
ExecStart=/sbin/ethtool -K enp6s0 gso off gro off tso off tx off rx off
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload
systemctl enable disable-nic-offload-enp6s0.service
systemctl start disable-nic-offload-enp6s0.service

3. Disattiva ASPM via GRUB

Modifica /etc/default/grub:

bash

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pcie_aspm=off"

Poi:

bash

update-grub
reboot

Verifica post-modifica

Dopo il riavvio, controlla:

bash

ethtool -k enp6s0
journalctl -b | grep enp6s0

Se non compaiono nuovi NETDEV WATCHDOG, la scheda è stabilizzata.

Conclusione

Il problema dei timeout su Realtek r8169 è noto e può essere risolto disattivando ASPM e le offload. Questi interventi migliorano la stabilità di rete, soprattutto in ambienti server e cluster Proxmox.

Lascia un commento

Il tuo indirizzo email non sarĂ  pubblicato. I campi obbligatori sono contrassegnati *