net: mana: Sync page pool RX frags for CPU
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.18.56, 7.1.5
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: yes
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: net: mana: Sync page pool RX frags for CPU MANA allocates RX buffers from page pool fragments when frag_count is greater than 1. In that case the buffers remain DMA mapped by page pool and the RX completion path does not call dma_unmap_single(). As a result, the implicit sync-for-CPU normally performed by dma_unmap_single() is missing before the packet data is passed to the networking stack. This breaks RX on configurations which require explicit DMA syncing, for example when booted with swiotlb=force. Fix this by recording the page pool page and DMA sync offset when the RX buffer is allocated, and syncing the received packet range for CPU access before handing the RX buffer to the stack.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From 730ff06d3f5cc2ce0348414b78c10528b767d4a3 · fixed in 845c959178ccab020b67bed7f4eae3058135ec80; From 730ff06d3f5cc2ce0348414b78c10528b767d4a3 · fixed in bc650dd5ce6434286b96e2b26a41af81f679cc7c; From 730ff06d3f5cc2ce0348414b78c10528b767d4a3 · fixed in c72a0f09c57f92113df69f9b902d11c9e4b132f5
- Linux Linux
6.18
- KernelLinux
From 6.18.0 · fixed in 6.18.56; From 6.19.0 · fixed in 7.1.5