CVE-2025-71109
Severity CVSS v4.0:
Pending analysis
Type:
CWE-787
Out-of-bounds Write
Publication date:
14/01/2026
Last modified:
25/03/2026
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
MIPS: ftrace: Fix memory corruption when kernel is located beyond 32 bits<br />
<br />
Since commit e424054000878 ("MIPS: Tracing: Reduce the overhead of<br />
dynamic Function Tracer"), the macro UASM_i_LA_mostly has been used,<br />
and this macro can generate more than 2 instructions. At the same<br />
time, the code in ftrace assumes that no more than 2 instructions can<br />
be generated, which is why it stores them in an int[2] array. However,<br />
as previously noted, the macro UASM_i_LA_mostly (and now UASM_i_LA)<br />
causes a buffer overflow when _mcount is beyond 32 bits. This leads to<br />
corruption of the variables located in the __read_mostly section.<br />
<br />
This corruption was observed because the variable<br />
__cpu_primary_thread_mask was corrupted, causing a hang very early<br />
during boot.<br />
<br />
This fix prevents the corruption by avoiding the generation of<br />
instructions if they could exceed 2 instructions in<br />
length. Fortunately, insn_la_mcount is only used if the instrumented<br />
code is located outside the kernel code section, so dynamic ftrace can<br />
still be used, albeit in a more limited scope. This is still<br />
preferable to corrupting memory and/or crashing the kernel.
Impact
Base Score 3.x
5.50
Severity 3.x
MEDIUM
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 2.6.35.1 (including) | 6.12.64 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.13 (including) | 6.18.3 (excluding) |
| cpe:2.3:o:linux:linux_kernel:2.6.35:-:*:*:*:*:*:* | ||
| 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:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page



