HAOS 18.3 regression on generic-x86-64: Realtek RTL8168/r8169 NETDEV WATCHDOG and loss of network

Author: yiskangCreated Sep 21, 2026Updated Sep 21, 2026

Describe the issue you are experiencing

After upgrading a bare-metal generic-x86-64 Home Assistant OS installation from HAOS 18.2 to HAOS 18.3, the Ethernet interface becomes unusable after reboot.

HAOS itself boots successfully, but the machine becomes unreachable from the LAN. The local console continuously reports r8169 NETDEV WATCHDOG transmit queue timeouts on enp2s0.

The affected NIC is:

  • Vendor ID: 0x10ec (Realtek)
  • Device ID: 0x8168
  • Subsystem vendor: 0x10ec
  • Subsystem device: 0x8168
  • Driver: r8169
  • Interface: enp2s0
  • PCI address: 0000:02:00.0

Rolling back to HAOS 18.2 using os boot-slot other immediately restores Ethernet connectivity.

HAOS 18.2 works normally on the exact same hardware and configuration.

What operating system image do you use?

generic-x86-64 (Generic UEFI capable x86-64 systems)

What version of Home Assistant Operating System is installed?

18.3

Did the problem occur after upgrading the Operating System?

Yes

Hardware details

Bare-metal x86-64 installation.

Ethernet controller:

  • PCI address: 0000:02:00.0
  • Vendor ID: 0x10ec (Realtek)
  • Device ID: 0x8168
  • Subsystem vendor: 0x10ec
  • Subsystem device: 0x8168
  • Kernel driver: r8169
  • Interface: enp2s0

HAOS 18.2:

  • Kernel: 6.18.39-haos
  • Ethernet works normally

HAOS 18.3:

  • System boots, but Ethernet becomes unusable
  • Repeated NETDEV WATCHDOG transmit queue timeout messages

Steps to reproduce the issue

  1. Start with HAOS 18.2 on a generic-x86-64 bare-metal system using a Realtek 10ec:8168 NIC with the r8169 driver.
  2. Verify Ethernet connectivity works normally.
  3. Upgrade Home Assistant OS from 18.2 to 18.3.
  4. Reboot into HAOS 18.3.
  5. Observe that HAOS boots, but the host becomes unreachable from the LAN.
  6. Check the local console and observe repeated r8169 NETDEV WATCHDOG / transmit queue timeout messages.
  7. From the local Home Assistant CLI, run os boot-slot other.
  8. The system boots back into HAOS 18.2.
  9. Ethernet connectivity immediately works normally again without any configuration changes.

I reproduced the regression by upgrading to 18.3 and confirmed that it disappears when booting the previous 18.2 slot.

Image

Anything in the Supervisor logs that might be useful for us?

txt
The Supervisor did not report an explicit OS update error.

The update was fetched normally:

2026-09-21 17:54:28.088 INFO (MainThread) [supervisor.os.manager] Fetch OTA update from https://os-artifacts.home-assistant.io/18.3/haos_generic-x86-64-18.3.raucb

After reboot, HAOS 18.3 successfully booted, but the network interface became unusable. The relevant errors appeared on the local host/kernel console rather than in the Supervisor log.

Anything in the Host logs that might be useful for us?

txt
These messages repeat continuously while running HAOS 18.3.

r8169 0000:02:00.0 enp2s0: NETDEV WATCHDOG: CPU: 1: transmit queue 0 timed out 5096 ms
r8169 0000:02:00.0 enp2s0: rtl_rxtx_empty_cond == 0 (loop: 42, delay: 100)
r8169 0000:02:00.0 enp2s0: NETDEV WATCHDOG: CPU: 1: transmit queue 0 timed out 6124 ms
r8169 0000:02:00.0 enp2s0: rtl_rxtx_empty_cond == 0 (loop: 42, delay: 100)

System information

NOTE: The system is currently rolled back to HAOS 18.2 because HAOS 18.3 makes the Ethernet interface unusable. HAOS 18.3 remains installed in the inactive boot slot.

System Information

version core-2026.9.3
installation_type Home Assistant OS
dev false
hassio true
docker true
container_arch amd64
user root
virtualenv false
python_version 3.14.6
os_name Linux
os_version 6.18.39-haos
arch x86_64
timezone Asia/Taipei
config_dir /config
Home Assistant Cloud
logged_in true
subscription_expiration September 30, 2026 at 8:00 AM
relayer_connected true
relayer_region ap-southeast-1
remote_enabled false
remote_connected false
remote_server ap-southeast-1-0.ui.nabu.casa
alexa_enabled true
google_enabled true
cloud_ice_servers_enabled true
certificate_status ready
instance_id ...
iot_state connected
iot_tries 0
certificate_expire_date December 17, 2026 at 11:10 PM
certificate_fingerprint ....
certificate_alternative_names undefined
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
HACS
GitHub API ok
GitHub Content ok
GitHub Web ok
HACS Data ok
GitHub API Calls Remaining 5000
Installed Version 2.0.5
Stage running
Available Repositories 4123
Downloaded Repositories 10
Home Assistant Supervisor
host_os Home Assistant OS 18.2
update_channel stable
supervisor_version supervisor-2026.09.2
agent_version 1.10.0
docker_version 29.6.2
disk_total 234.0 GB
disk_used 13.8 GB
nameservers 192.168.8.1
healthy true
supported true
host_connectivity true
supervisor_connectivity true
ntp_synchronized true
virtualization
board generic-x86-64
supervisor_api ok
version_api ok
installed_addons Matter Server (9.2.0), Zigbee2MQTT (2.14.1-1), Mosquitto broker (7.1.1), chrony (6.1.0), File editor (6.1.0), MariaDB (3.0.1), phpMyAdmin (0.14.0), Network UPS Tools (0.18.1), Samba share (12.10.0), Terminal & SSH (10.5.0), Get HACS (1.3.1), Home Assistant Google Drive Backup (0.112.1), AirCast (5.2.1), Nginx Proxy Manager (4.0.3)
Dashboards
dashboards 1
resources 1
mode auto-gen
Network Configuration
adapters lo (disabled), enp2s0 (enabled, default, auto), enp2s0.10 (disabled), hassio (disabled), docker0 (disabled), veth92d9551 (disabled), vethced3a45 (disabled), vethf8d869f (disabled), veth5f51ba0 (disabled), vethb945406 (disabled), veth8e9a1dc (disabled), veth8bcf4a5 (disabled), veth98c0ec7 (disabled), veth7361ecf (disabled), vethe103fed (disabled), veth246b08e (disabled), veth0a11fe8 (disabled)
ipv4_addresses lo (127.0.0.1/8), enp2s0 (192.168.8.19/24), enp2s0.10 (192.168.10.19/24), hassio (172.30.32.1/23), docker0 (172.30.232.1/23), veth92d9551 (), vethced3a45 (), vethf8d869f (), veth5f51ba0 (), vethb945406 (), veth8e9a1dc (), veth8bcf4a5 (), veth98c0ec7 (), veth7361ecf (), vethe103fed (), veth246b08e (), veth0a11fe8 ()
ipv6_addresses lo (::1/128), enp2s0 (fdad:e520:5169:494f:d9fa:c13e:27ce:24f3/64, fe80::11ec:c90c:738e:47e8/64), enp2s0.10 (fe80::abd1:ee27:3606:8c3f/64), hassio (fd0c:ac1e:2100::1/48, fe80::2c51:55ff:fe3c:aa4e/64), docker0 (fdc6:b40c:4d0b::1/64, fe80::4814:96ff:fe44:2037/64), veth92d9551 (fe80::7cba:f2ff:fe22:2074/64), vethced3a45 (fe80::d46c:27ff:fe28:64ea/64), vethf8d869f (fe80::a8de:7dff:fecb:b80/64), veth5f51ba0 (fe80::145e:43ff:fe91:f6b3/64), vethb945406 (fe80::f8b1:e8ff:fe5e:4b6e/64), veth8e9a1dc (fe80::6831:3eff:fe53:71d0/64), veth8bcf4a5 (fe80::cc62:2cff:fe61:b078/64), veth98c0ec7 (fe80::78be:8aff:fecc:ec97/64), veth7361ecf (fe80::249b:3aff:fe31:920d/64), vethe103fed (fe80::54a8:c7ff:fe65:a860/64), veth246b08e (fe80::74d7:b1ff:fe15:edf4/64), veth0a11fe8 (fe80::602f:44ff:fe74:3169/64)
announce_addresses 192.168.8.19, fdad:e520:5169:494f:d9fa:c13e:27ce:24f3, fe80::11ec:c90c:738e:47e8
Recorder
oldest_recorder_run August 23, 2026 at 10:58 AM
current_recorder_run September 21, 2026 at 7:16 PM
estimated_db_size 1236.45 MiB
database_engine mysql
database_version 11.4.10
Xiaomi Miot
component_version 1.1.5
can_reach_server ok
can_reach_spec ok
logged_accounts 1
total_devices 22

Additional information

board: generic-x86-64 boot: A boot_slots: A: state: booted status: good version: "18.2" B: state: inactive status: good version: "18.3" update_available: true version: "18.2" version_latest: "18.3" version_pending: null

After the failure, ha os info showed HAOS 18.3 as the booted OS.

I used the local console because the machine was no longer reachable over the network and ran:

os boot-slot other

The machine rebooted into HAOS 18.2 and Ethernet immediately started working again.

After rollback:

  • Slot A: HAOS 18.2, booted, status good
  • Slot B: HAOS 18.3, inactive, status good
  • HAOS 18.2 kernel: 6.18.39-haos

No network, switch, cabling, or Home Assistant configuration changes were made between the failing 18.3 boot and the working 18.2 boot.

Source: home-assistant/operating-system