In the Linux kernel, the following vulnerability has been resolved: media: ipu6: Do not free aux...
🔗 CVE IDs covered (1)
📋 Description
In the Linux kernel, the following vulnerability has been resolved:
media: ipu6: Do not free aux device pdata after init
ipu6_bus_initialize_device() stores the isys/psys pdata pointer in struct ipu6_bus_device and initializes the auxiliary device. After that point, error unwinding must drop the auxiliary device reference and let ipu6_bus_release() free both the bus device and adev->pdata.
The isys and psys init paths already call put_device() when MMU initialization fails, and ipu6_bus_add_device() calls auxiliary_device_uninit() on auxiliary_device_add() failure. Both paths therefore run the bus release callback. The extra kfree(pdata) in the callers can release the same object a second time.
Remove the manual pdata frees after the auxiliary device has been initialized.
This issue was found by a static analysis checker and confirmed by manual source review.
🔗 References (6)
- https://nvd.nist.gov/vuln/detail/CVE-2026-93070
- https://git.kernel.org/stable/c/5323ed5a7bb2568191ec676b2035b0396105aa05
- https://git.kernel.org/stable/c/7d102d1f0631807a491a140f67c9628dea85dfd2
- https://git.kernel.org/stable/c/9be07216af4cfc4813e1a46ce26407d31ea845de
- https://git.kernel.org/stable/c/faa1eb97f0e66bf122f44b62be6b323f86333e9f
- https://github.com/advisories/GHSA-2q2h-4p8v-3772