CVE-2025-71109 Details
Description
In the Linux kernel, the following vulnerability has been resolved: MIPS: ftrace: Fix memory corruption when kernel is located beyond 32 bits Since commit e424054000878 ("MIPS: Tracing: Reduce the overhead of dynamic Function Tracer"), the macro UASM_i_LA_mostly has been used, and this macro can generate more than 2 instructions. At the same time, the code in ftrace assumes that no more than 2 instructions can be generated, which is why it stores them in an int[2] array. However, as previously noted, the macro UASM_i_LA_mostly (and now UASM_i_LA) causes a buffer overflow when _mcount is beyond 32 bits. This leads to corruption of the variables located in the __read_mostly section. This corruption was observed because the variable __cpu_primary_thread_mask was corrupted, causing a hang very early during boot. This fix prevents the corruption by avoiding the generation of instructions if they could exceed 2 instructions in length. Fortunately, insn_la_mcount is only used if the instrumented code is located outside the kernel code section, so dynamic ftrace can still be used, albeit in a more limited scope. This is still preferable to corrupting memory and/or crashing the kernel.
A memory corruption vulnerability has been identified in the Linux kernel's MIPS architecture, specifically within the ftrace component. This issue arises when the kernel is located beyond 32 bits, leading to a buffer overflow. The problem was introduced in a previous commit that aimed to reduce the overhead of dynamic function tracing. The ftrace code incorrectly assumes that certain macros will generate no more than two instructions, which is not the case, causing corruption of variables in the __read_mostly section. This corruption was evident as it disrupted the __cpu_primary_thread_mask variable, leading to a system hang early in the boot process. The vulnerability has been addressed by modifying the instruction generation process to prevent exceeding the two-instruction limit, although this restricts the use of dynamic ftrace in some scenarios.
Users can apply the latest patches available in the Linux kernel stable tree to address this vulnerability.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
No SSVC data is available for this CVE.
References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://git.kernel.org/stable/c/36dac9a3dda1f2bae343191bc16b910c603cac25 | kernel.org | Patch |
| https://git.kernel.org/stable/c/7f39b9d0e86ed6236b9a5fb67616ab1f76c4f150 | kernel.org | Patch |
| https://git.kernel.org/stable/c/e3e33ac2eb69d595079a1a1e444c2fb98efdd42d | kernel.org | Patch |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-787 | Out-of-bounds Write | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| linux linux kernel | >= 2.6.35.1, < 6.12.64 >= 6.13, < 6.18.3 2.6.35 - 6.19 rc1 6.19 rc2 6.19 rc3 6.19 rc4 6.19 rc5 6.19 rc6 6.19 rc7 6.19 rc8 |
CPE
Remediation
| |
Change History
4 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jul 30, 2026 | CVE Modified | kernel.org |
| Jun 17, 2026 | CVE Modified | kernel.org |
| Mar 25, 2026 | Initial Analysis | [email protected] |
| Jan 14, 2026 | New CVE Received | kernel.org |