Linux kernel
cpe:2.3:a:linux:linux_kernel:*:*:*:*:*:*:*, +4 more
A vulnerability in the Linux kernel's 8250 serial driver can lead to a deadlock in transmitting data over Direct Memory Access (DMA). This issue arises because the function 'dmaengine_terminate_async' does not ensure that the '__dma_tx_complete' callback is executed. The callback is crucial as it clears the 'tx_running' status of the DMA transaction. If the callback is skipped, the 'tx_running' flag remains set, preventing the scheduling of new DMA transmissions, which can disrupt data flow and cause communication issues.
This vulnerability can cause a transmission deadlock, where new DMA transactions cannot be scheduled, potentially leading to data loss or communication failures.
The vulnerability can be reproduced by initiating a DMA transmission using the 8250 serial driver, then canceling the transaction before the '__dma_tx_complete' callback has a chance to run. This can be done by terminating the DMA channel asynchronously, which will not clear the 'tx_running' flag, creating a blockage in the transmission process.
The vulnerability has been addressed in the Linux kernel. Users should upgrade to the latest version where this issue has been fixed.
Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.