drm/mediatek: Fix ovl adaptor platform device leak
- 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.160, 6.12.113, 6.18.56, 7.2.10
- 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: drm/mediatek: Fix ovl adaptor platform device leak mtk_drm_probe() creates an OVL adaptor platform device with platform_device_register_data() when the display pipeline requires the OVL adaptor. If a later initialization step fails, the probe error path releases the DRM resources without unregistering the already registered OVL adaptor device. The normal remove path likewise leaves the device registered after the DRM driver is unbound. Keep track of whether the OVL adaptor was successfully registered and unregister it on probe failure. Also recover the platform device from the stored DDP component device and unregister it during normal removal. The issue was identified by a static analysis tool I developed and confirmed by manual review.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 0d9eee9118b77e51eeafc5bf4d008fac97035d56 · fixed in 03fb1c657028cb9f189b400f3adb46e3ba676aa5; From 0d9eee9118b77e51eeafc5bf4d008fac97035d56 · fixed in 3d85bd738aba61df14dfaf8fe638e2172d8427bf; From 0d9eee9118b77e51eeafc5bf4d008fac97035d56 · fixed in 629458b7e49559593823e351535294db17331be7; From 0d9eee9118b77e51eeafc5bf4d008fac97035d56 · fixed in 8e3a350075b556f2fed4517705935bfee4529fb6; From 0d9eee9118b77e51eeafc5bf4d008fac97035d56 · fixed in 048739be3e9cacae5301b68245668002fe6f0ce5
- Linux Linux
6.4
- KernelLinux
From 6.4.0 · fixed in 6.6.160; From 6.7.0 · fixed in 6.12.113; From 6.13.0 · fixed in 6.18.56; From 6.19.0 · fixed in 7.2.10