CVE-2024-50297

Summary

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

net: xilinx: axienet: Enqueue Tx packets in dql before dmaengine starts

Enqueue packets in dql after dma engine starts causes race condition. Tx transfer starts once dma engine is started and may execute dql dequeue in completion before it gets queued. It results in following kernel crash while running iperf stress test:

kernel BUG at lib/dynamic_queue_limits.c:99! <snip> Internal error: Oops - BUG: 00000000f2000800 [#1] SMP pc : dql_completed+0x238/0x248 lr : dql_completed+0x3c/0x248

Call trace: dql_completed+0x238/0x248 axienet_dma_tx_cb+0xa0/0x170 xilinx_dma_do_tasklet+0xdc/0x290 tasklet_action_common+0xf8/0x11c tasklet_action+0x30/0x3c handle_softirqs+0xf8/0x230 <snip>

Start dmaengine after enqueue in dql fixes the crash.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux6a91b846af85a24241decd686269e8e038eb13d1 < def3dee25cbd1c9b2ed443c3f6180e952563de77affected
LinuxLinux6a91b846af85a24241decd686269e8e038eb13d1 < 5ccdcdf186aec6b9111845fd37e1757e9b413e2faffected
LinuxLinux6.8affected
LinuxLinux0 < 6.8unaffected
LinuxLinux6.11.8 <= 6.11.*unaffected
LinuxLinux6.12 <= *unaffected

Weaknesses

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: partial

References