CVE-2026-89451
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
iommu/sva: Set handle->dev before the SVA handle is visible
iommu_attach_device_pasid() installs the new SVA attach handle in the group PASID lookup before iommu_sva_bind_device() returns. A concurrent bind can therefore find and reuse the same handle after iommu_sva_lock is dropped.
handle->dev was initialized after dropping iommu_sva_lock. This leaves a window where a racing bind can return a handle whose dev pointer is still NULL. A subsequent iommu_sva_unbind_device() can then dereference it via handle->dev->iommu_group.
Initialize handle->dev before releasing iommu_sva_lock so any visible SVA handle is fully initialized.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | be51b1d6bbff48c7d1943a8ff1e5a55777807f6e < bcffb1c75da8fc9d51168ff9f09d471c26507912 | affected |
| Linux | Linux | be51b1d6bbff48c7d1943a8ff1e5a55777807f6e < 968e9a1f71140c86dc4092f6b361e997923f3813 | affected |
| Linux | Linux | be51b1d6bbff48c7d1943a8ff1e5a55777807f6e < 37a96a30617a4c96f048a5874c00509bc4fe4d85 | affected |
| Linux | Linux | be51b1d6bbff48c7d1943a8ff1e5a55777807f6e < 530f8f9c3546cb3ebee1b135375aaee08a073ebb | affected |
| Linux | Linux | 6.2 | affected |
| Linux | Linux | 0 < 6.2 | unaffected |
| Linux | Linux | 6.12.109 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.50 <= 6.18.* | unaffected |
| Linux | Linux | 7.2.4 <= 7.2.* | unaffected |
| Linux | Linux | 7.3-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/bcffb1c75da8fc9d51168ff9f09d471c26507912
- https://git.kernel.org/stable/c/968e9a1f71140c86dc4092f6b361e997923f3813
- https://git.kernel.org/stable/c/37a96a30617a4c96f048a5874c00509bc4fe4d85
- https://git.kernel.org/stable/c/530f8f9c3546cb3ebee1b135375aaee08a073ebb
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.