CVE-2026-89452: iommu/msm: Unwind probe state on registration failure
In the Linux kernel, the following vulnerability has been resolved:
iommu/msm: Unwind probe state on registration failure
msmiommuprobe() adds its devm-managed IOMMU object to qcomiommudevices before adding the IOMMU sysfs device and registering it with the IOMMU core.
If iommudevicesysfsadd() fails, probe returns with the object still on qcomiommudevices. The driver core then releases the devm allocation, leaving a dangling list entry that later list walks may dereference.
If iommudeviceregister() fails, the same dangling list entry remains and the sysfs device is left registered as well.
Unwind the sysfs device and global list entry in reverse setup order on the corresponding failure paths.
Affected Software
Event History
Frequently Asked Questions
What failure conditions trigger the stale state?
The issue occurs when IOMMU sysfs device creation or IOMMU core registration fails during probe, after the devm-managed object has already been added to the global device list.
What residual state is left by each failure path?
If sysfs device creation fails, the global list retains a dangling entry after the devm allocation is released. If IOMMU core registration fails, the dangling list entry remains and the sysfs device also remains registered.