CVE-2026-72307: mlxsw: fix refcount leak in mlxsw_sp_vrs_lpm_tree_replace()
In the Linux kernel, the following vulnerability has been resolved:
mlxsw: fix refcount leak in mlxswspvrslpmtreereplace()
When mlxswspvrslpmtreereplace() 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 mlxswspvrlpmtreereplace() multiple times on it while never rolling back the earlier VRs. Those VRs continue to hold a reference to newtree acquired via mlxswsplpmtreehold(), leaking the reference count of newtree.
Fix by reinitializing vr inside the error loop with the updated index:
vr = &mlxswsp->router->vrs[i];
so that the loop correctly iterates over all VRs that were actually replaced.