net: microchip: sparx5: clean up PSFP resources on flower setup failure
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.6.158, 6.12.111, 6.18.53
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: net: microchip: sparx5: clean up PSFP resources on flower setup failure sparx5_tc_flower_psfp_setup() allocates PSFP stream gate, flow meter and stream filter resources before adding VCAP actions. If a later step fails, the resources allocated earlier in the function are not unwound. Add error paths to release the stream filter, flow meter and stream gate when setup fails after they have been acquired. Also make sparx5_psfp_fm_add() return the acquired flow-meter id before the existing-flow-meter early return. When an existing flow meter is reused, sparx5_psfp_fm_get() increments its pool reference count, but the caller previously kept psfp_fmid as 0. If a later setup step failed, the error path could try to delete flow-meter id 0 instead of the reused flow meter, leaving the incremented reference behind.
Timeline
- CVE published
- First seen by cve.now
- Record last updated
Affected versions
- Linux Linux
From 6ebf182bfdf15bd58ebcf6760b06458694e0fad2 · fixed in a7625d408f7f0535c2b0f05d53231d6496acd48b; From 6ebf182bfdf15bd58ebcf6760b06458694e0fad2 · fixed in a46ea3f7ee0d3ad3d5e92043232b293be2a305d3; From 6ebf182bfdf15bd58ebcf6760b06458694e0fad2 · fixed in 640c1bd8d359ad34817f5afec0872985e87b49ec; From 6ebf182bfdf15bd58ebcf6760b06458694e0fad2 · fixed in 46e50367338702abe3df661df7795bdada40fef7
- Linux Linux
6.3
- KernelLinux
fixed in 6.6.158; From 6.7.0 · fixed in 6.12.111; From 6.13.0 · fixed in 6.18.53