CVE-2026-23207

Severity CVSS v4.0:
Pending analysis
Type:
CWE-362 Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
Publication date:
14/02/2026
Last modified:
18/03/2026

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> spi: tegra210-quad: Protect curr_xfer check in IRQ handler<br /> <br /> Now that all other accesses to curr_xfer are done under the lock,<br /> protect the curr_xfer NULL check in tegra_qspi_isr_thread() with the<br /> spinlock. Without this protection, the following race can occur:<br /> <br /> CPU0 (ISR thread) CPU1 (timeout path)<br /> ---------------- -------------------<br /> if (!tqspi-&gt;curr_xfer)<br /> // sees non-NULL<br /> spin_lock()<br /> tqspi-&gt;curr_xfer = NULL<br /> spin_unlock()<br /> handle_*_xfer()<br /> spin_lock()<br /> t = tqspi-&gt;curr_xfer // NULL!<br /> ... t-&gt;len ... // NULL dereference!<br /> <br /> With this patch, all curr_xfer accesses are now properly synchronized.<br /> <br /> Although all accesses to curr_xfer are done under the lock, in<br /> tegra_qspi_isr_thread() it checks for NULL, releases the lock and<br /> reacquires it later in handle_cpu_based_xfer()/handle_dma_based_xfer().<br /> There is a potential for an update in between, which could cause a NULL<br /> pointer dereference.<br /> <br /> To handle this, add a NULL check inside the handlers after acquiring<br /> the lock. This ensures that if the timeout path has already cleared<br /> curr_xfer, the handler will safely return without dereferencing the<br /> NULL pointer.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.15.198 (including) 5.16 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.1.160 (including) 6.2 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.6.120 (including) 6.7 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.12.63 (including) 6.13 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.17.13 (including) 6.18 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.18.2 (including) 6.18.10 (excluding)
cpe:2.3:o:linux:linux_kernel:6.19:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc6:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc7:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc8:*:*:*:*:*:*