Skip to content
CVE PROGRAM SOURCE RECORD8.8 High

CVE-2024-35843

iommu/vt-d: Use device rbtree in iopf reporting path

Description

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.

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

  • 06f4b8d09dbabec631ed7b033f5d5413d86c7134 to < 3d39238991e745c5df85785604f037f35d9d1b15affected
  • 06f4b8d09dbabec631ed7b033f5d5413d86c7134 to < def054b01a867822254e1dda13d587f5c7a99e2aaffected

Linux Linux

Default version status: affected

  • 6.1affected
  • 0 to < 6.1unaffected
  • 6.8.2 to ≤ 6.8.*unaffected
  • 6.9 to ≤ *unaffected

References