CVE-2026-98489

net: atl1c: fix soft lockup on out-of-range tpd_cons read

State
Published
Severity
Not scored
Published
Oct 18, 2026
Updated
Oct 19, 2026
Reserved
Sep 25, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

net: atl1c: fix soft lockup on out-of-range tpd_cons read

The hardware can report an out-of-range tpd_cons (seen as 0xffff) while the PCIe link/MAC is resetting. An out-of-range value can never be reached and the loop below would spin forever. To avoid a soft lockup treat it as "nothing new to clean" instead.

Reproduced on two machines, same NIC (Qualcomm Atheros AR8151 v2.0, 4-port), triggered by rebooting a Mikrotik CCR2004 PCIe card that the ports are directly linked to:

- Ubuntu 26.04.1 LTS, kernel 7.0.0-31-generic. The link-flap precursor, before the lockup was captured with a full trace elsewhere:

atl1c 0000:05:00.0 enp5s0f0: NETDEV WATCHDOG: CPU: 4: transmit queue 2 timed out 489984 ms atl1c 0000:05:00.0: MAC state machine can't be idle since disabled for 10ms second atl1c 0000:05:00.0: atl1c: enp5s0f0 NIC Link is Up<65535 Mbps Full Duplex>

65535 (0xffff) here is the same value tpd_cons reads back once the loop below gets stuck.

- Proxmox VE, kernel 7.0.14-11-pve. Same NIC/trigger, this time caught by the soft lockup watchdog with a full stack trace:

watchdog: BUG: soft lockup - CPU#12 stuck for 354s! [napi/eth%d-0:329] CPU: 12 UID: 0 PID: 329 Comm: napi/eth%d-0 Tainted: P O L 7.0.14-11-pve #1 PREEMPT(lazy) RIP: 0010:atl1c_clean_tx+0x142/0x2d0 [atl1c] Call Trace: <TASK> __napi_poll+0x32/0x1e0 napi_threaded_poll_loop+0x286/0x2e0 napi_threaded_poll+0xfd/0x140 kthread+0xf7/0x130 ret_from_fork+0x2da/0x3a0 ret_from_fork_asm+0x1a/0x30 </TASK>

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 43250ddd75a35d1f7926d989a10fefd30c37eaa7 to before e7acd4cdeccbcdfd407adeb72b1eba14d1145b6fAffected
  • 43250ddd75a35d1f7926d989a10fefd30c37eaa7 to before 5ea2576a4f5ec476f33169fdbe9090d2b038ad13Affected
  • 43250ddd75a35d1f7926d989a10fefd30c37eaa7 to before 4daf80da0c38b8cd92c111ad96cb38322aabf586Affected
  • 43250ddd75a35d1f7926d989a10fefd30c37eaa7 to before 57b55367b6e3accc55a989afeaf127063e3614dcAffected
  • 43250ddd75a35d1f7926d989a10fefd30c37eaa7 to before 9f2cc71a2e2799d9c993c73f1bd36507eef6ae43Affected
  • 43250ddd75a35d1f7926d989a10fefd30c37eaa7 to before 586847400b1168a88917287ac02c2c91a620b841Affected
  • 43250ddd75a35d1f7926d989a10fefd30c37eaa7 to before d4ab263e40fcf7cfa38a43ec774067d32eb94e16Affected
  • 43250ddd75a35d1f7926d989a10fefd30c37eaa7 to before 36c2009d90f2210ef92e6f4f2850e8b57b09e754Affected
LinuxLinux
  • 2.6.29Affected
  • before 2.6.29Not affected
  • 5.10.271 through 5.10.*Not affected
  • 5.15.222 through 5.15.*Not affected
  • 6.1.189 through 6.1.*Not affected
  • 6.6.158 through 6.6.*Not affected
  • 6.12.112 through 6.12.*Not affected
  • 6.18.55 through 6.18.*Not affected
  • 7.2.9 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.