Description
In the Linux kernel, the following vulnerability has been resolved: gpu: host1x: Fix device reference leak in host1x_device_parse_dt() error path After device_initialize(), the embedded struct device in struct host1x_device should be released through the device core with put_device(). In host1x_device_add(), if host1x_device_parse_dt() fails, the current error path frees the object directly with kfree(device). That bypasses the normal device lifetime handling and leaks the reference held on the embedded struct device. The issue was identified by a static analysis tool I developed and confirmed by manual review. Fix this by using put_device() in the host1x_device_parse_dt() failure path.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
f4c5cf88fbd50e4779042268947b2e2f90c20484 to < a408d89e20d38d78f540e1951dc4c6056ad662e1affectedf4c5cf88fbd50e4779042268947b2e2f90c20484 to < 4ee41361c637eafa80f5d88b46d0016e6cdb24dbaffectedf4c5cf88fbd50e4779042268947b2e2f90c20484 to < 3642d0a45214e3b4cf61bf5e75b04b490d0b3519affectedf4c5cf88fbd50e4779042268947b2e2f90c20484 to < edc7267b59a465c6ae7c5ffac2171c30962bd325affectedf4c5cf88fbd50e4779042268947b2e2f90c20484 to < 4454caa204a2edb19c62754ddb96e5dbca0d2f49affectedf4c5cf88fbd50e4779042268947b2e2f90c20484 to < c4d6442ac3ed00041fe4e1df715717ed78a7d37faffectedf4c5cf88fbd50e4779042268947b2e2f90c20484 to < 8559b1501f77a5b5d003790bec170ca449e0c674affectedf4c5cf88fbd50e4779042268947b2e2f90c20484 to < e75717f9aec04355777be41070890c6a815c76dfaffected
Linux Linux
Default version status: affected
4.0affected0 to < 4.0unaffected5.10.261 to ≤ 5.10.*unaffected5.15.212 to ≤ 5.15.*unaffected6.1.178 to ≤ 6.1.*unaffected6.6.145 to ≤ 6.6.*unaffected6.12.97 to ≤ 6.12.*unaffected6.18.40 to ≤ 6.18.*unaffected7.1.5 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/a408d89e20d38d78f540e1951dc4c6056ad662e1 ↗
- https://git.kernel.org/stable/c/4ee41361c637eafa80f5d88b46d0016e6cdb24db ↗
- https://git.kernel.org/stable/c/3642d0a45214e3b4cf61bf5e75b04b490d0b3519 ↗
- https://git.kernel.org/stable/c/edc7267b59a465c6ae7c5ffac2171c30962bd325 ↗
- https://git.kernel.org/stable/c/4454caa204a2edb19c62754ddb96e5dbca0d2f49 ↗
- https://git.kernel.org/stable/c/c4d6442ac3ed00041fe4e1df715717ed78a7d37f ↗
- https://git.kernel.org/stable/c/8559b1501f77a5b5d003790bec170ca449e0c674 ↗
- https://git.kernel.org/stable/c/e75717f9aec04355777be41070890c6a815c76df ↗