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

mlxsw: fix refcount leak in mlxsw_sp_vrs_lpm_tree_replace()

When mlxsw_sp_vrs_lpm_tree_replace() fails after replacing some VRs,
the error rollback loop does not correctly revert the preceding
replacements. The loop decrements the index but fails to update the
vr pointer, which still points to the VR that caused the failure. As
a result, the condition and the rollback call always operate on the
same VR, potentially calling mlxsw_sp_vr_lpm_tree_replace() multiple
times on it while never rolling back the earlier VRs. Those VRs
continue to hold a reference to new_tree acquired via
mlxsw_sp_lpm_tree_hold(), leaking the reference count of new_tree.

Fix by reinitializing vr inside the error loop with the updated index:

vr = &mlxsw_sp->router->vrs[i];

so that the loop correctly iterates over all VRs that were actually
replaced.
Published: 2026-08-15
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A reference‑count leak in the Linux mlxsw driver causes the function that replaces virtual routing tables to retain references to a new tree object even after failure. The rollback loop decrements the index but never updates the VR pointer, so the same VR is repeatedly processed and the earlier VRs are never rolled back. The leaked reference prevents the new_tree object from being released, leading to gradual depletion of kernel reference‑count resources. This can degrade system stability and, after many failures, lead to resource exhaustion and a denial of service.

Affected Systems

The vulnerability affects any Linux kernel that includes the mlxsw switch driver. All installations that run this driver in their kernel are potentially affected until the kernel includes the fix that reinitializes the VR pointer in the error loop. No specific kernel versions are listed, so users of the latest stable releases with the patch are safe.

Risk and Exploitability

The CVSS score of 5.5 and the EPSS score of < 1%, but the vulnerability is not listed in CISA KEV and no public exploits are known. The attack vector is inferred to be local, requiring the ability to trigger the vulnerable replacement routine through the mlxsw driver – typically privileged users or processes that interact with the switch hardware. While the issue does not grant immediate code execution, repeated failures could lead to resource exhaustion, presenting a moderate risk to availability.

Generated by OpenCVE AI on August 22, 2026 at 06:26 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the latest Linux kernel release that contains the mlxsw reference‑count leak fix or backport the relevant commit from the kernel source to your current kernel.
  • Rebuild the mlxsw module from the patched source and load it into the running kernel so the driver incorporates the corrected error‑loop logic.
  • Configure monitoring of kernel memory usage and device‑module reference counts to detect abnormal growth of new_tree references, and set alerts if thresholds are breached.

Generated by OpenCVE AI on August 22, 2026 at 06:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 19 Aug 2026 00:15:00 +0000

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

None

cvssV3_1

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

threat_severity

Low


Sat, 15 Aug 2026 19:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-399

Sat, 15 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: mlxsw: fix refcount leak in mlxsw_sp_vrs_lpm_tree_replace() When mlxsw_sp_vrs_lpm_tree_replace() fails after replacing some VRs, the error rollback loop does not correctly revert the preceding replacements. The loop decrements the index but fails to update the vr pointer, which still points to the VR that caused the failure. As a result, the condition and the rollback call always operate on the same VR, potentially calling mlxsw_sp_vr_lpm_tree_replace() multiple times on it while never rolling back the earlier VRs. Those VRs continue to hold a reference to new_tree acquired via mlxsw_sp_lpm_tree_hold(), leaking the reference count of new_tree. Fix by reinitializing vr inside the error loop with the updated index: vr = &mlxsw_sp->router->vrs[i]; so that the loop correctly iterates over all VRs that were actually replaced.
Title mlxsw: fix refcount leak in mlxsw_sp_vrs_lpm_tree_replace()
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-08-17T05:12:11.806Z

Reserved: 2026-08-09T03:40:39.918Z

Link: CVE-2026-72307

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T06:22:03.440

Modified: 2026-08-17T06:18:33.787

Link: CVE-2026-72307

cve-icon Redhat

Severity : Low

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-72307 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-22T06:30:04Z

Weaknesses