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

dmaengine: idxd: fix fdev setup failure cleanup in idxd_cdev_open()

The failed_dev_add and failed_dev_name paths drop the file-device
reference while wq->wq_lock is still held. If put_device(fdev) drops the
last reference, idxd_file_dev_release() runs synchronously and tries to
take wq->wq_lock again, deadlocking.

Those paths also fall through into the later ctx cleanup labels even
though idxd_file_dev_release() owns that cleanup and frees ctx. This can
make idxd_xa_pasid_remove(ctx) and kfree(ctx) operate on a freed context.

Move idxd_wq_get() before file-device setup can fail, since the release
callback always calls idxd_wq_put(). Then unlock wq->wq_lock before
put_device(fdev) and return directly from the file-device setup failure
path, leaving ctx cleanup to the release callback.
Published: 2026-08-15
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability lies in the dmaengine idxd device driver, where failure paths in idxd_cdev_open() drop the file‑device reference while holding a workqueue lock. This causes the release routine to attempt to reacquire the same lock, leading to a deadlock, and can also cause a use‑after‑free of the driver context when cleanup proceeds after the context has already been freed. These race conditions can stall system processes or trigger a kernel panic, effectively denying service to the affected system.

Affected Systems

All Linux kernel releases that contain the dmaengine idxd driver are affected until the patch that moves wq acquisition before potential failure is applied. The precise impacted versions are not listed in the CVE data.

Risk and Exploitability

To exploit this flaw an attacker would need to interact with the idxd device from user space, which implies local or privileged execution. EPSS information is not available and the vulnerability is not listed in the CISA KEV catalog. The CVSS score is not supplied, so the risk level is not formally quantified at present. The primary consequence is a denial of service via kernel deadlock or memory corruption, with potential for a subsequent compromise if a successful use‑after‑free leads to arbitrary kernel code execution.

Generated by OpenCVE AI on August 15, 2026 at 15:17 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to the latest stable release that includes the idxd driver fix or apply the specific patch commit that moves wq acquisition before error handling.
  • Reboot the system after updating the kernel to ensure the new driver is in use.
  • Verify that the idxd module is either removed from the kernel configuration or that the patched version is loaded, preventing the vulnerability from being present on the running system.

Generated by OpenCVE AI on August 15, 2026 at 15:17 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 15 Aug 2026 15:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Sat, 15 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: dmaengine: idxd: fix fdev setup failure cleanup in idxd_cdev_open() The failed_dev_add and failed_dev_name paths drop the file-device reference while wq->wq_lock is still held. If put_device(fdev) drops the last reference, idxd_file_dev_release() runs synchronously and tries to take wq->wq_lock again, deadlocking. Those paths also fall through into the later ctx cleanup labels even though idxd_file_dev_release() owns that cleanup and frees ctx. This can make idxd_xa_pasid_remove(ctx) and kfree(ctx) operate on a freed context. Move idxd_wq_get() before file-device setup can fail, since the release callback always calls idxd_wq_put(). Then unlock wq->wq_lock before put_device(fdev) and return directly from the file-device setup failure path, leaving ctx cleanup to the release callback.
Title dmaengine: idxd: fix fdev setup failure cleanup in idxd_cdev_open()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-15T12:28:12.558Z

Reserved: 2026-08-15T05:44:03.917Z

Link: CVE-2026-74574

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T13:18:03.063

Modified: 2026-08-15T13:18:03.063

Link: CVE-2026-74574

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-15T15:30:09Z

Weaknesses