Linux Kernel DMA Engine IDXD Improper Memory Management Vulnerability

Vulnerability

A vulnerability in the Linux kernel's DMA engine IDXD driver has been addressed. The issue arose from an improper call to 'idxd_free()', which created a duplicate 'put_device()' operation. This led to a reference count underflow, causing a use-after-free condition. The problem was particularly pronounced when the 'CONFIG_DEBUG_KOBJECT_RELEASE' option was enabled, as it could trigger asynchronous device cleanup, potentially leading to memory corruption when the IDXD module was unloaded.

Impact

The vulnerability could cause a use-after-free condition, allowing for memory corruption during the IDXD module's removal process.

Reproduction

The vulnerability can be reproduced by unloading the IDXD module with 'CONFIG_DEBUG_KOBJECT_RELEASE' enabled. This will trigger the asynchronous cleanup of the device, and if 'idxd_free()' is called immediately afterward, it will result in a use-after-free condition.

Remediation

Users can update to the latest version of the Linux kernel where this vulnerability has been fixed.

Added: Sep 23, 2025, 6:33 AM
Updated: Sep 23, 2025, 6:33 AM

Vulnerability Rating

Custom Algorithm
spread
9.0
impact
2.5
exploitability
4.3
remediation
7.7
relevance
0.5
threat
4.8
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.