CVE-2026-23052
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
04/02/2026
Última modificación:
04/02/2026
Descripción
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
ftrace: Do not over-allocate ftrace memory<br />
<br />
The pg_remaining calculation in ftrace_process_locs() assumes that<br />
ENTRIES_PER_PAGE multiplied by 2^order equals the actual capacity of the<br />
allocated page group. However, ENTRIES_PER_PAGE is PAGE_SIZE / ENTRY_SIZE<br />
(integer division). When PAGE_SIZE is not a multiple of ENTRY_SIZE (e.g.<br />
4096 / 24 = 170 with remainder 16), high-order allocations (like 256 pages)<br />
have significantly more capacity than 256 * 170. This leads to pg_remaining<br />
being underestimated, which in turn makes skip (derived from skipped -<br />
pg_remaining) larger than expected, causing the WARN(skip != remaining)<br />
to trigger.<br />
<br />
Extra allocated pages for ftrace: 2 with 654 skipped<br />
WARNING: CPU: 0 PID: 0 at kernel/trace/ftrace.c:7295 ftrace_process_locs+0x5bf/0x5e0<br />
<br />
A similar problem in ftrace_allocate_records() can result in allocating<br />
too many pages. This can trigger the second warning in<br />
ftrace_process_locs().<br />
<br />
Extra allocated pages for ftrace<br />
WARNING: CPU: 0 PID: 0 at kernel/trace/ftrace.c:7276 ftrace_process_locs+0x548/0x580<br />
<br />
Use the actual capacity of a page group to determine the number of pages<br />
to allocate. Have ftrace_allocate_pages() return the number of allocated<br />
pages to avoid having to calculate it. Use the actual page group capacity<br />
when validating the number of unused pages due to skipped entries.<br />
Drop the definition of ENTRIES_PER_PAGE since it is no longer used.



