In the Linux kernel, the following vulnerability has been resolved:
iommu/vt-d: Use device rbtree in iopf reporting path
The existing I/O page fault handler currently locates the PCI device by calling pci_get_domain_bus_and_slot(). This function searches the list of all PCI devices until the desired device is found. To improve lookup efficiency, replace it with device_rbtree_find() to search the device within the probed device rbtree.
The I/O page fault is initiated by the device, which does not have any synchronization mechanism with the software to ensure that the device stays in the probed device tree. Theoretically, a device could be released by the IOMMU subsystem after device_rbtree_find() and before iopf_get_dev_fault_param(), which would cause a use-after-free problem.
Add a mutex to synchronize the I/O page fault reporting path and the IOMMU release device path. This lock doesn't introduce any performance overhead, as the conflict between I/O page fault reporting and device releasing is very rare.
CVSS Details
- CVSS 3.1 Base Score: 8.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | May 15, 2025 | May 17, 2024 |
| Redhat_linux | — | Upgrade kernelNo solution existsUpgrade kernel-rt | Dec 5, 2024 | May 17, 2024 |
| Suse | — | Upgrade kernel-obs-qaUpgrade cluster-md-kmp-defaultUpgrade dtb-armUpgrade dtb-amlogicUpgrade dtb-xilinxUpgrade kernel-devel-azureUpgrade dtb-appleUpgrade dtb-hisiliconUpgrade dlm-kmp-64kbUpgrade kernel-default-develUpgrade ocfs2-kmp-rtUpgrade kernel-64kbUpgrade kernel-64kb-livepatch-develUpgrade kernel-azure-vdsoUpgrade gfs2-kmp-64kbUpgrade kernel-debug-develUpgrade kernel-kvmsmall-develUpgrade kernel-rt-develUpgrade dtb-lgUpgrade gfs2-kmp-rtUpgrade kselftests-kmp-defaultUpgrade kernel-64kb-optionalUpgrade reiserfs-kmp-defaultUpgrade kernel-symsUpgrade cluster-md-kmp-azureUpgrade kernel-kvmsmall-livepatch-develUpgrade dtb-freescaleUpgrade kernel-rt-livepatch-develUpgrade dtb-renesasUpgrade dtb-apmUpgrade kernel-sourceUpgrade kselftests-kmp-64kbUpgrade dtb-amdUpgrade kernel-zfcpdumpUpgrade kernel-azure-extraUpgrade kernel-debugUpgrade kernel-debug-livepatch-develUpgrade kernel-rt_debug-vdsoUpgrade kernel-azure-livepatch-develUpgrade dtb-mediatekUpgrade cluster-md-kmp-rtUpgrade kernel-source-azureUpgrade kernel-kvmsmallUpgrade kernel-syms-azureUpgrade kernel-default-optionalUpgrade kernel-develUpgrade dtb-exynosUpgrade kernel-macrosUpgrade dtb-amazonUpgrade kernel-64kb-develUpgrade dlm-kmp-azureUpgrade kernel-devel-rtUpgrade kernel-syms-rtUpgrade kernel-default-extraUpgrade kernel-debug-vdsoUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-rt-extraUpgrade reiserfs-kmp-64kbUpgrade kernel-rt_debug-develUpgrade kernel-default-baseUpgrade kernel-azure-optionalUpgrade kernel-azureUpgrade reiserfs-kmp-azureUpgrade ocfs2-kmp-64kbUpgrade kernel-source-vanillaUpgrade kernel-rt-optionalUpgrade dtb-alteraUpgrade kernel-azure-develUpgrade kernel-docsUpgrade kernel-64kb-extraUpgrade dtb-qcomUpgrade dtb-nvidiaUpgrade dtb-broadcomUpgrade kernel-docs-htmlUpgrade dlm-kmp-rtUpgrade ocfs2-kmp-defaultUpgrade dlm-kmp-defaultUpgrade dtb-socionextUpgrade kernel-defaultUpgrade kernel-source-rtUpgrade kernel-rt_debugUpgrade kernel-default-base-rebuildUpgrade gfs2-kmp-defaultUpgrade kernel-rtUpgrade kselftests-kmp-rtUpgrade kernel-default-livepatch-develUpgrade ocfs2-kmp-azureUpgrade reiserfs-kmp-rtUpgrade dtb-rockchipUpgrade dtb-marvellUpgrade cluster-md-kmp-64kbUpgrade kernel-obs-buildUpgrade dtb-caviumUpgrade dtb-allwinnerUpgrade kernel-rt-vdsoUpgrade dtb-sprdUpgrade kselftests-kmp-azureUpgrade kernel-kvmsmall-vdsoUpgrade kernel-default-vdsoUpgrade gfs2-kmp-azureUpgrade kernel-default-livepatch | Jul 23, 2024 | May 17, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-35-lowlatency-64kUpgrade linux-image-6.8.0-1006-ibmUpgrade linux-image-generic-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-kvmUpgrade linux-image-6.8.0-35-genericUpgrade linux-image-ibmUpgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-35-generic-64kUpgrade linux-image-6.8.0-1006-oracle-64kUpgrade linux-image-6.8.0-1008-azureUpgrade linux-image-6.8.0-35-lowlatencyUpgrade linux-image-6.8.0-1008-gcpUpgrade linux-image-raspiUpgrade linux-image-genericUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-azureUpgrade linux-image-generic-lpaeUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-oem-24.04aUpgrade linux-image-oracle-64kUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1009-awsUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-virtualUpgrade linux-image-lowlatency-64kUpgrade linux-image-oracleUpgrade linux-image-6.8.0-1006-oracleUpgrade linux-image-oem-24.04Upgrade linux-image-6.8.0-1005-raspiUpgrade linux-image-awsUpgrade linux-image-6.8.0-1008-azure-fdeUpgrade linux-image-gcpUpgrade linux-image-6.8.0-1004-gkeUpgrade linux-image-6.8.0-1006-oemUpgrade linux-image-ibm-classicUpgrade linux-image-gke | Jul 1, 2024 | May 17, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | May 17, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub