Get a Demo

Let's Patch It!

Book a short call with one our specialists, we'll walk you through how Endor Patches work, and ask you a few questions about your environment (like your primary programming languages and repository management). We'll also send you an email right after you fill out the form, feel free to reply with any questions you have in advance!

CVE

CVE-2026-90012

spi: Fix DMA mapping ownership on partial map failure
Back to all
CVE

CVE-2026-90012

spi: Fix DMA mapping ownership on partial map failure

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

spi: Fix DMA mapping ownership on partial map failure

If RX mapping fails after TX mapping succeeds, _spimap_msg() unmaps

TX but leaves txsgmapped set. If TX mapping fails on a later

transfer, mappings created for earlier transfers remain active.

In both cases, cur{tx,rx}dma_dev have not yet been updated because they

are assigned only after every transfer has been mapped. The subsequent

spiunmapmsg() may therefore unmap the TX mapping again or release

earlier mappings using a NULL or stale device. Using a NULL device can

trigger an oops. An empty SG table does not prevent the NULL dereference

because dmaunmapsg_attrs() accesses the device before checking the

entry count.

Publish both mapping devices before mapping starts and unwind all

failures through _spiunmap_msg(). This clears the mapping flags and

releases each mapping once with the device that created it.

Publishing the devices before the loop also refreshes them when no

transfer needs mapping. No mapping flag is set in that case, so current

users do not use the pointers as mapping owners.

Package Versions Affected

Package Version
patch Availability
No items found.

Automatically patch vulnerabilities without upgrading

Fix Without Upgrading
Detect compatible fix
Apply safe remediation
Fix with a single pull request

CVSS Version

Severity
Base Score
CVSS Version
Score Vector
C
H
U
9.8
-
3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
C
H
U
0
-
3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
C
H
U
-

Related Resources

No items found.

References

https://git.kernel.org/stable/c/367cea239fc93094e5c16a72724800e0358f5c46, https://git.kernel.org/stable/c/5def8b6aaad44603740786262b95b6f77df52a1c, https://git.kernel.org/stable/c/a38051fa2ddedbc8ec15292c55e276880ec5b9a4, https://git.kernel.org/stable/c/cc8354213ad6bd5fb8cc05a3fa3701188d086626, https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/90xxx/CVE-2026-90012.json, https://nvd.nist.gov/vuln/detail/CVE-2026-90012, https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Severity

9.8

CVSS Score
0
10

Basic Information

Base CVSS
9.8
EPSS Probability
0.00671%
EPSS Percentile
0.50634%
Introduced Version
e289df82344fecc104ad8326b9ab6da612b9c899,6.11.0,6.13.0,6.19.0,0
Fix Available
367cea239fc93094e5c16a72724800e0358f5c46,6.12.110,6.18.51,7.2.5,6.12.111-1~deb12u1,6.12.111-1,0:6.12.0-207.111.5.1.el9uek,0:6.12.0-207.111.5.1.el10uek

Fix Critical Vulnerabilities Instantly

Secure your app without upgrading.
Fix Without Upgrading