CVE-2026-72411: net: dsa: mxl862xx: fix use-after-free of DSA ports in crc_err_work
In the Linux kernel, the following vulnerability has been resolved:
net: dsa: mxl862xx: fix use-after-free of DSA ports in crcerrwork
Upon an MDIO CRC error mxl862xxcrcerrworkfn() walks the DSA ports and closes the CPU port conduits:
dsaswitchforeachcpuport(dp, priv->ds) devclose(dp->conduit);
mxl862xxremove() unregisters the switch before cancelling this work:
setbit(MXL862XXFLAGWORKSTOPPED, &priv->flags); canceldelayedworksync(&priv->statswork); dsaunregisterswitch(ds); mxl862xxhostshutdown(priv);
dsaunregisterswitch() frees the dsaport objects. If a CRC error schedules the work during teardown it can run after the ports have been freed and dereference freed memory.
Guard the port walk with MXL862XXFLAGWORKSTOPPED, which is already set before dsaunregisterswitch(). DSA tears the ports down under rtnllock(), so checking the flag under rtnllock() means the work either runs before teardown and sees valid ports, or runs afterwards, observes the flag and skips the walk. This mirrors the hostfloodwork handler, which skips torn-down ports under rtnllock().
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-72411?
CVE-2026-72411 has a risk score of 34 indicating a moderate level of severity.
How do I fix CVE-2026-72411?
To fix CVE-2026-72411, update to the latest patch of the Linux kernel that addresses this use-after-free vulnerability.
What type of vulnerability is CVE-2026-72411?
CVE-2026-72411 is categorized as a use-after-free vulnerability affecting DSA ports in the Linux kernel.
Which component is affected by CVE-2026-72411?
CVE-2026-72411 specifically affects the net: dsa: mxl862xx driver component within the Linux kernel.
What are the potential impacts of CVE-2026-72411?
The potential impacts of CVE-2026-72411 include possible denial of service or arbitrary code execution due to the use-after-free condition.