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

net: ethernet: mtk_eth_soc: allocate dummy netdev sooner

The RX rings and the shared NAPI are carried by an internal "dummy" netdev
(eth->dummy_dev). mtk_probe() creates that dummy device, and adds the
shared tx/rx NAPI to it, only after the MAC netdevs have been registered.
That order has been there since the MT7623 support was added and leaves a
window in which the netdevs are visible to the network core before the
shared NAPI and the dummy device exist.

If anything brings the first netdev up during that window (e.g. netifd
opening the WAN link the instant the interface is registered), the
first-open path runs without them. On NETSYS v2 and later SoCs
mtk_rx_alloc() -> __xdp_rxq_info_reg() then dereferences eth->dummy_dev ==
NULL:

WARNING: CPU: ... Missing net_device from driver

in net/core/xdp.c and mtk_open() fails with -ENODEV. On NETSYS v1 SoCs
(MT7621/MT7622/MT7623/MT7629) there is no page pool, so the same open
instead calls napi_enable() on a napi_struct that netif_napi_add() has not
initialised yet and dereferences a NULL napi->dev.

Allocate the dummy netdev and add the shared tx/rx NAPI to it before the
register_netdev() loop. Both the dummy-allocation failure and a
register_netdev() failure now unwind through mtk_unreg_dev(), which
unregisters the net_device notifiers and the netdevs registered so far,
stopping a concurrently-opened netdev (ndo_stop) and its NAPI before the
dummy carrier is freed.

A netdev that opened during the window can also have queued the
frame-engine reset worker (via the tx watchdog or phylink), so the probe
error path now cancels eth->pending_work before freeing the shared state,
as mtk_cleanup() already does on remove.
Published: 2026-10-18
Score: n/a
EPSS: n/a
KEV: No
Impact: Denial of Service
Action: Apply Patch
AI Analysis

Impact

The vulnerability is a null pointer dereference caused by a race condition between the allocation of a dummy network device and the registration of other network interfaces. This is a CWE-476 vulnerability. When a device is brought up during a brief window before the dummy netdev and its NAPI are initialized, the driver dereferences a null pointer, leading to a warning and a failure to open the interface.

Affected Systems

The issue affects Linux kernel builds that contain the MediaTek mtk_eth_soc Ethernet driver, especially on NetSys v1 and v2 SoCs such as MT7621, MT7622, MT7623, and MT7629. Any kernel version prior to the commit that allocates the dummy netdev early is affected. The fix is present in later kernel releases that incorporate the upstream commit referenced by the provided Git URLs.

Risk and Exploitability

The vulnerability is not listed in the CISA KEV catalog and its EPSS score is unavailable, indicating limited publicly known exploitation data. Exploitation requires influence over the system’s boot or network configuration to bring an interface up during the vulnerable window, which normally demands privileged local access. While a local privileged user could trigger a denial of service by forcing an interface to come up early, remote exploitation would be unlikely without additional privileged compromise. The lack of a CVSS score in the data suggests that the severity is high only in terms of service interruption rather than a direct security breach.

Generated by OpenCVE AI on October 18, 2026 at 21:57 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a version that includes the upstream commit that allocates the dummy netdev early; verify the presence of the commit 17eafd74de5a31e30361420a2e3ebf64186b77e5 or later.
  • Configure the system so that network interfaces do not automatically bring up during boot; for example, disable auto‑up on boot or add a short startup script that delays interface activation until the kernel is fully initialized.
  • Monitor kernel logs for the message "Missing net_device from driver"; if the warning appears, treat it as an indicator that the race window might still be present and apply the patch promptly.

Generated by OpenCVE AI on October 18, 2026 at 21:57 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 18 Oct 2026 22:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-476

Sun, 18 Oct 2026 16:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: net: ethernet: mtk_eth_soc: allocate dummy netdev sooner The RX rings and the shared NAPI are carried by an internal "dummy" netdev (eth->dummy_dev). mtk_probe() creates that dummy device, and adds the shared tx/rx NAPI to it, only after the MAC netdevs have been registered. That order has been there since the MT7623 support was added and leaves a window in which the netdevs are visible to the network core before the shared NAPI and the dummy device exist. If anything brings the first netdev up during that window (e.g. netifd opening the WAN link the instant the interface is registered), the first-open path runs without them. On NETSYS v2 and later SoCs mtk_rx_alloc() -> __xdp_rxq_info_reg() then dereferences eth->dummy_dev == NULL: WARNING: CPU: ... Missing net_device from driver in net/core/xdp.c and mtk_open() fails with -ENODEV. On NETSYS v1 SoCs (MT7621/MT7622/MT7623/MT7629) there is no page pool, so the same open instead calls napi_enable() on a napi_struct that netif_napi_add() has not initialised yet and dereferences a NULL napi->dev. Allocate the dummy netdev and add the shared tx/rx NAPI to it before the register_netdev() loop. Both the dummy-allocation failure and a register_netdev() failure now unwind through mtk_unreg_dev(), which unregisters the net_device notifiers and the netdevs registered so far, stopping a concurrently-opened netdev (ndo_stop) and its NAPI before the dummy carrier is freed. A netdev that opened during the window can also have queued the frame-engine reset worker (via the tx watchdog or phylink), so the probe error path now cancels eth->pending_work before freeing the shared state, as mtk_cleanup() already does on remove.
Title net: ethernet: mtk_eth_soc: allocate dummy netdev sooner
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 Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-18T15:48:40.684Z

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

Link: CVE-2026-98796

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-18T16:17:33.583

Modified: 2026-10-18T16:17:33.583

Link: CVE-2026-98796

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-18T22:00:20Z

Weaknesses