serial: amba-pl011: synchronize DMA teardown
- 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 5.10.267, 5.15.218, 6.1.185, 6.6.154, 6.12.106, and 2 more
- 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: no
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: serial: amba-pl011: synchronize DMA teardown dmaengine_terminate_all() does not wait for a running callback, so the TX callback can still touch the TX buffer after it is freed. The RX poll timer reads the RX buffers without the port lock. Switch to dmaengine_terminate_sync() and delete the RX timer before freeing the buffers.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From ead76f329f777c7301e0a5456a0a1c7a081570bd · fixed in a38fae9d212e2d3ed5e9ec0ef773f8c0a27fb76e; From ead76f329f777c7301e0a5456a0a1c7a081570bd · fixed in 44bd0ecc3444882d08ecfbc2b2418d2f463d3186; From ead76f329f777c7301e0a5456a0a1c7a081570bd · fixed in f70c9d4fba46463a5b1c7b3ee9ee3b40c90dac03; From ead76f329f777c7301e0a5456a0a1c7a081570bd · fixed in c8c8e895f65fbf71ea6224e27cf8dab91b776e0d; From ead76f329f777c7301e0a5456a0a1c7a081570bd · fixed in 9f6989e477f03a4721d34bb4b09b17accd40283e; From ead76f329f777c7301e0a5456a0a1c7a081570bd · fixed in 5974cb66681eac367107b05924744d7e3b49d41c; From ead76f329f777c7301e0a5456a0a1c7a081570bd · fixed in fdfb46c387241b4eddd36d746793764413285913; From ead76f329f777c7301e0a5456a0a1c7a081570bd · fixed in 440915499231e9db1c361aa45bb702e8fd3b4a32
- Linux Linux
2.6.39
- KernelLinux
From 2.6.39 · fixed in 5.10.267; From 5.11.0 · fixed in 5.15.218; From 5.16.0 · fixed in 6.1.185; From 6.2.0 · fixed in 6.6.154; From 6.7.0 · fixed in 6.12.106; From 6.13.0 · fixed in 6.18.45; From 6.19.0 · fixed in 7.1.9
References 8
git.kernel.org
- stable/c/a38fae9d212e2d3ed5e9ec0ef773f8c0a27fb76e
- stable/c/44bd0ecc3444882d08ecfbc2b2418d2f463d3186
- stable/c/f70c9d4fba46463a5b1c7b3ee9ee3b40c90dac03
- stable/c/c8c8e895f65fbf71ea6224e27cf8dab91b776e0d
- stable/c/9f6989e477f03a4721d34bb4b09b17accd40283e
- stable/c/5974cb66681eac367107b05924744d7e3b49d41c
- stable/c/fdfb46c387241b4eddd36d746793764413285913
- stable/c/440915499231e9db1c361aa45bb702e8fd3b4a32