CVE-2026-89993: dmaengine: dw-edma: Initialize IRQ data before requesting IRQs
In the Linux kernel, the following vulnerability has been resolved:
dmaengine: dw-edma: Initialize IRQ data before requesting IRQs
dwedmairqrequest() passes struct dwedmairq to requestirq() before dwedmachannelsetup() fills the back pointer. A shared interrupt can therefore enter the handler with dwirq->dw still NULL, leading to a NULL pointer dereference.
Set the back pointer before installing each handler.
Affected Software
Event History
Frequently Asked Questions
Which code changes can be used to verify that a fix is present?
The provided stable-tree references are commits b86280b12ccf33b68b309b7cb0e4476894dfe77c, 07e50cef557def076418c67051a336e4c6bd50e1, and 17ef63843c0fcbf1efdfbbfb0f5584a5ea2c91ba.
What condition is associated with triggering the failure?
The issue can occur when a shared interrupt enters the handler after it has been requested but before the IRQ structure's back pointer has been initialized. The resulting behavior is a NULL pointer dereference in the interrupt handler.