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

net: lan966x: restore RX state on reload failure

lan966x_fdma_reload() backs up rx->page_pool and rx->fdma before
reallocating the RX resources for the new MTU. If the allocation fails,
the restore path puts these fields back before restarting RX.

However, the reload path also updates rx->page_order and rx->max_mtu
before calling lan966x_fdma_rx_alloc(). These fields are not restored on
failure, so RX can be restarted with the old pages, old FDMA state and
old page pool, but with the page geometry from the failed new MTU.

This can make the XDP path advertise a frame size derived from the new
page_order while the actual RX pages still come from the old allocation.
For example, after a failed reload to a jumbo MTU, xdp_init_buff() may be
called with a frame size larger than the restored RX pages.

lan966x_fdma_rx_alloc_page_pool() also registers the newly allocated page
pool with each port's XDP RXQ before fdma_alloc_coherent() is called. If
fdma_alloc_coherent() fails, the new page pool is destroyed, but the
rollback path does not restore the per-port XDP RXQ mem model
registration either.

Save and restore rx->page_order and rx->max_mtu, and restore the old page
pool registration for each port's XDP RXQ before RX is started again.
This keeps the restored RX state consistent after a failed reload.
Published: 2026-10-23
Score: 4.1 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service via kernel instability
Action: Immediate Patch
AI Analysis

Impact

The lan966x network driver restores certain fields after a failed MTU reload but fails to restore page order and maximum MTU. This inconsistency causes the XDP path to advertise a frame size derived from an uninitialized or mismatched page geometry, potentially leading to memory corruption or kernel panic. The weakness is an improper restoration of state following an error (CWE-665 and CWE-805). No remote code execution is directly possible from the description.

Affected Systems

All Linux kernel builds that include the lan966x driver are potentially affected. The issue exists in any kernel version that contains the unpatched reload logic. Distribution gradients are not specified, so any system running a kernel prior to the commit that fixed the restore path could be vulnerable.

Risk and Exploitability

The CVSS score of 4.1 and EPSS < 1%, indicating no publicly known exploitation yet. The vulnerability requires the ability to trigger a MTU reload, typically through root-level configuration or network management actions, giving it a local attack vector. Due to the lack of a public exploit and the need for privileged configuration, the overall risk remains low to moderate, but it can lead to denial of service or easier escalation if a kernel crash is achieved.

Generated by OpenCVE AI on October 27, 2026 at 13:47 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply a kernel update that includes the commit restoring page_order and max_mtu on reload failure.
  • Until a patch is available, avoid changing MTU values on interfaces using the lan966x driver or disable the driver on affected systems.
  • Monitor kernel logs for XDP or lan966x related errors and verify that advertised frame sizes match actual page pool sizes.

Generated by OpenCVE AI on October 27, 2026 at 13:47 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 27 Oct 2026 12:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-805
References
Metrics threat_severity

None

cvssV3_1

{'score': 4.1, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Fri, 23 Oct 2026 18:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-665

Fri, 23 Oct 2026 15:15:00 +0000

Type Values Removed Values Added
First Time appeared Linux linux
Vendors & Products Linux linux

Fri, 23 Oct 2026 12:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: net: lan966x: restore RX state on reload failure lan966x_fdma_reload() backs up rx->page_pool and rx->fdma before reallocating the RX resources for the new MTU. If the allocation fails, the restore path puts these fields back before restarting RX. However, the reload path also updates rx->page_order and rx->max_mtu before calling lan966x_fdma_rx_alloc(). These fields are not restored on failure, so RX can be restarted with the old pages, old FDMA state and old page pool, but with the page geometry from the failed new MTU. This can make the XDP path advertise a frame size derived from the new page_order while the actual RX pages still come from the old allocation. For example, after a failed reload to a jumbo MTU, xdp_init_buff() may be called with a frame size larger than the restored RX pages. lan966x_fdma_rx_alloc_page_pool() also registers the newly allocated page pool with each port's XDP RXQ before fdma_alloc_coherent() is called. If fdma_alloc_coherent() fails, the new page pool is destroyed, but the rollback path does not restore the per-port XDP RXQ mem model registration either. Save and restore rx->page_order and rx->max_mtu, and restore the old page pool registration for each port's XDP RXQ before RX is started again. This keeps the restored RX state consistent after a failed reload.
Title net: lan966x: restore RX state on reload failure
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-26T06:56:35.317Z

Reserved: 2026-09-25T10:25:14.379Z

Link: CVE-2026-98906

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-23T12:18:24.680

Modified: 2026-10-26T07:17:15.960

Link: CVE-2026-98906

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-10-23T00:00:00Z

Links: CVE-2026-98906 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-27T14:00:05Z

Weaknesses
  • CWE-665

    Improper Initialization

  • CWE-805

    Buffer Access with Incorrect Length Value