CVE-2025-37886 pds_core: make wait_context part of q_info
A use-after-free in the pds_core driver causes kernel crashes when admin queue requests time out, leading to denial of service.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2025-37886?
CVE-2025-37886 is a high-severity vulnerability in Linux kernel, published on 9 May 2025. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
pds_core: make wait_context part of q_info
Make the wait_context a full part of the q_info struct rather than a stack variable that goes away after pdsc_adminq_post() is done so that the context is still available after the wait loop has given up.
There was a case where a slow development firmware caused the adminq request to time out, but then later the FW finally finished the request and sent the interrupt. The handler tried to complete_all() the completion context that had been created on the stack in pdsc_adminq_post() but no longer existed. This caused bad pointer usage, kernel crashes, and much wailing and gnashing of teeth.
Weakness: CWE-476
Which versions are affected by CVE-2025-37886?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2025-37886?
Apply the vendor's patch.
Is CVE-2025-37886 being exploited?
There is no known exploitation of CVE-2025-37886 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as BELL-CVE-2025-37886, DEBIAN-CVE-2025-37886, GHSA-2x8x-5r7x-jcgh, ROOT-OS-UBUNTU-2204-CVE-2025-37886, ROOT-OS-UBUNTU-2404-CVE-2025-37886, UBUNTU-CVE-2025-37886.