CVE-2026-52952

iommu: Fix WARN_ON in __iommu_group_set_domain_nofail() due to reset

High · published June 24, 2026

CVSS v3.1
8.8
EPSS
0%
Percentile
6.9
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

iommu: Fix WARN_ON in __iommu_group_set_domain_nofail() due to reset

In __iommu_group_set_domain_internal(), concurrent domain attachments are

rejected when any device in the group is recovering. This is necessary to

fence concurrent attachments to a multi-device group where devices might

share the same RID due to PCI DMA alias quirks, but triggers the WARN_ON in

__iommu_group_set_domain_nofail().

Other IOMMU_SET_DOMAIN_MUST_SUCCEED callers in detach/teardown paths, such

as __iommu_group_set_core_domain and __iommu_release_dma_ownership, should

not be rejected, as the domain would be freed anyway in these nofail paths

while group->domain is still pointing to it. So pci_dev_reset_iommu_done()

could trigger a UAF when re-attaching group->domain.

Honor the IOMMU_SET_DOMAIN_MUST_SUCCEED flag, allowing the callers through

the group->recovery_cnt fence, so as to update the group->domain pointer.

Instead add a gdev->blocked check in the device iteration loop, to prevent

any concurrent per-device detachment.

The record
Technical detail
CVSS v3.1
8.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00177 · 6.9th percentile
Published
2026-06-24T16:28Z
EPSS history
Timeline
  • 24 JUN 16:28Z
    iommu: Fix WARN_ON in __iommu_group_set_domain_nofail() due to reset
    cvelistv5