CVE-2026-23469
Race Condition in Linux drm/imagination GPU Driver Causes Kernel Crash
Publication date: 2026-04-03
Last updated on: 2026-04-03
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | linux_kernel | 6.17.7 |
| linux_kernel | linux_kernel | 6.17.7 |
| linux | linux_kernel | From 6.17.7 (inc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-UNKNOWN |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability exists in the Linux kernel's drm/imagination driver related to GPU power management. The runtime power management (PM) suspend callback does not properly synchronize with interrupt request (IRQ) handlers that may be running on other CPU cores. As a result, an IRQ handler could be active while the GPU is suspended, leading to attempts to access GPU registers during suspension.
This improper synchronization can cause kernel crashes, as the IRQ handler accesses GPU registers when the GPU is not in a valid state. The fix involves waiting for any IRQ handlers in progress on other CPU cores to finish by calling synchronize_irq() during the runtime PM suspend callback, preventing concurrent access and potential crashes.
How can this vulnerability impact me? :
This vulnerability can cause kernel crashes or panics on affected Linux systems using the drm/imagination GPU driver. Specifically, if the IRQ handler accesses GPU registers while the GPU is suspended, it can lead to system instability or a complete system crash.
Such crashes can disrupt normal system operation, potentially causing data loss, service interruptions, or requiring system reboots to recover.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by monitoring for kernel crash signatures related to the GPU interrupt handling, especially those indicating asynchronous SError interrupts and kernel panics involving the GPU IRQ handler.
Look for kernel log messages similar to the example crash signature provided, which includes lines such as 'SError Interrupt on CPU0', 'Kernel panic - not syncing: Asynchronous SError Interrupt', and traces involving 'pvr_riscv_irq_pending' and 'pvr_device_irq_thread_handler'.
Commands to check kernel logs for such signatures include:
- dmesg | grep -i 'SError Interrupt'
- journalctl -k | grep -i 'Kernel panic'
- journalctl -k | grep -i 'pvr_device_irq_thread_handler'
- journalctl -k | grep -i 'irq'
What immediate steps should I take to mitigate this vulnerability?
Immediate mitigation involves updating the Linux kernel to a version where this vulnerability has been resolved.
The fix includes synchronizing interrupts before suspending the GPU by calling synchronize_irq() in the runtime PM suspend callback and removing runtime PM resume/put calls from the threaded IRQ handler to avoid deadlocks.
Until the kernel is updated, avoid suspending the GPU or using runtime power management features that trigger the vulnerable code path, if possible.