CVE-2025-21813
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
27/02/2025
Last modified:
28/10/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
timers/migration: Fix off-by-one root mis-connection<br />
<br />
Before attaching a new root to the old root, the children counter of the<br />
new root is checked to verify that only the upcoming CPU&#39;s top group have<br />
been connected to it. However since the recently added commit b729cc1ec21a<br />
("timers/migration: Fix another race between hotplug and idle entry/exit")<br />
this check is not valid anymore because the old root is pre-accounted<br />
as a child to the new root. Therefore after connecting the upcoming<br />
CPU&#39;s top group to the new root, the children count to be expected must<br />
be 2 and not 1 anymore.<br />
<br />
This omission results in the old root to not be connected to the new<br />
root. Then eventually the system may run with more than one top level,<br />
which defeats the purpose of a single idle migrator.<br />
<br />
Also the old root is pre-accounted but not connected upon the new root<br />
creation. But it can be connected to the new root later on. Therefore<br />
the old root may be accounted twice to the new root. The propagation of<br />
such overcommit can end up creating a double final top-level root with a<br />
groupmask incorrectly initialized. Although harmless given that the final<br />
top level roots will never have a parent to walk up to, this oddity<br />
opportunistically reported the core issue:<br />
<br />
WARNING: CPU: 8 PID: 0 at kernel/time/timer_migration.c:543 tmigr_requires_handle_remote<br />
CPU: 8 UID: 0 PID: 0 Comm: swapper/8<br />
RIP: 0010:tmigr_requires_handle_remote<br />
Call Trace:<br />
<br />
? tmigr_requires_handle_remote<br />
? hrtimer_run_queues<br />
update_process_times<br />
tick_periodic<br />
tick_handle_periodic<br />
__sysvec_apic_timer_interrupt<br />
sysvec_apic_timer_interrupt<br />
<br />
<br />
Fix the problem by taking the old root into account in the children count<br />
of the new root so the connection is not omitted.<br />
<br />
Also warn when more than one top level group exists to better detect<br />
similar issues in the future.
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:*:*:*:*:*:*:*:* | 6.12.11 (including) | 6.12.14 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.13.1 (including) | 6.13.3 (excluding) |
| cpe:2.3:o:linux:linux_kernel:6.13:-:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:6.14:rc1:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page



