Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: tg3: clean up PHYLIB resources on probe failure tg3_get_invariants() can register an MDIO bus and connect a PHY for USE_PHYLIB devices. If tg3_init_one() later fails, its common error path releases the mappings and netdev without undoing those PHYLIB resources. Disconnect the PHY and unregister the MDIO bus before the remaining teardown. Guard PHY cleanup with USE_PHYLIB to match tg3_phy_init(), and call tg3_mdio_fini() unconditionally to match tg3_mdio_init(). The existing IS_CONNECTED and MDIOBUS_INITED flags make both helpers safe when initialization only completed partially. This issue was identified during our ongoing static-analysis research while reviewing kernel code.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 158d7abdae85e9ac43d99780c372d79c119f7626 before ce86d6929d03e6b0abcb781dfa50f9f0816bff78; affected 158d7abdae85e9ac43d99780c372d79c119f7626 before a449eedb3b1eb5b8b1f5ed116a1bfe85eaaf81df; affected 158d7abdae85e9ac43d99780c372d79c119f7626 before 0844402326d4e48a28688f93ec6442e93bb442fa; affected 158d7abdae85e9ac43d99780c372d79c119f7626 before e766321288b507afb70d2bfef6ba443213329f79; affected 158d7abdae85e9ac43d99780c372d79c119f7626 before d2abb0013b933d59ee441185df0eca9e8c0b33eb; affected 158d7abdae85e9ac43d99780c372d79c119f7626 before 6515c41503eef849abd2c7364f34e4bb25110f90; affected 158d7abdae85e9ac43d99780c372d79c119f7626 before b6c0c757c65893ad7bb17e8bcf33cdd8257d7b3d; affected 158d7abdae85e9ac43d99780c372d79c119f7626 before a92e1a412c53dc0d9ad639e7abf8b3fc70a5b6ad |
| Linux / Linux | affected 2.6.27; unaffected 0 before 2.6.27; unaffected 5.10.271 through 5.10.*; unaffected 5.15.222 through 5.15.*; unaffected 6.1.189 through 6.1.*; unaffected 6.6.158 through 6.6.*; unaffected 6.12.112 through 6.12.*; unaffected 6.18.55 through 6.18.*; unaffected 7.2.9 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/ce86d6929d03e6b0abcb781dfa50f9f0816bff78
- https://git.kernel.org/stable/c/a449eedb3b1eb5b8b1f5ed116a1bfe85eaaf81df
- https://git.kernel.org/stable/c/0844402326d4e48a28688f93ec6442e93bb442fa
- https://git.kernel.org/stable/c/e766321288b507afb70d2bfef6ba443213329f79
- https://git.kernel.org/stable/c/d2abb0013b933d59ee441185df0eca9e8c0b33eb
- https://git.kernel.org/stable/c/6515c41503eef849abd2c7364f34e4bb25110f90
- https://git.kernel.org/stable/c/b6c0c757c65893ad7bb17e8bcf33cdd8257d7b3d
- https://git.kernel.org/stable/c/a92e1a412c53dc0d9ad639e7abf8b3fc70a5b6ad