CVE-2026-53180: timers/migration: Fix livelock in tmigr_handle_remote_up()

Published Jun 25, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

timers/migration: Fix livelock in tmigrhandleremoteup()

tmigrhandleremotecpu() skips timerexpireremote() when cpu == smpprocessorid(), assuming the local softirq path already handled this CPU's timers.

This assumption is wrong because jiffies can advance after the handling of the CPU's global timers in runtimerbase(BASEGLOBAL) and before tmigrhandleremote() evaluates the expiry times.

As a consequence a timer which expires after the CPU local timer wheel advanced and becomes expired in the remote handling is ignored and the callback is never invoked and removed from the timer wheel.

What's worse is that fetchnexttimerinterruptremote() keeps reporting it as expired, and the event is re-queued with expires == now on each iteration. The goto-again loop spins indefinitely.

Fix this by calling timerexpireremote() unconditionally. That's minimal overhead for the common case as runtimerbase() returns immediately if there is nothing to expire in the local wheel.

[ tglx: Amend change log and add a comment ]

Affected Software

10 affected components
Linux Linux kernel
Linux Linux kernel>=6.9<6.12.94
Linux Linux kernel>=6.13<6.18.36
Linux Linux kernel>=6.19<7.0.13
Linux Linux kernel=7.1-rc1
Linux Linux kernel=7.1-rc2
Linux Linux kernel=7.1-rc3
Linux Linux kernel=7.1-rc4
Linux Linux kernel=7.1-rc5
Linux Linux kernel=7.1-rc6

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Fix the livelock by calling timer_expire_remote() unconditionally in the remote timer handling path (timer_expire_remote() should not be skipped when evaluating timer expiry/livelock conditions).

    Linux kernel timer handling call timer_expire_remote() = unconditionally

Event History

Jun 25, 2026
CVE Published
via MITRE·08:38 AM
Data Sourced
via MITRE·08:38 AM
DescriptionSeverity
Data Sourced
via NVD·09:16 AM
RemedyDescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

What is the practical impact if the condition is triggered?

A timer callback may never run and the timer may remain on the timer wheel. The timer-migration handling loop can then repeatedly re-queue an already expired event and spin indefinitely, causing a denial of service.

2

What level of access does the severity data indicate is required?

The supplied vector rates this as network-accessible with low attack complexity and no privileges or user interaction required. It indicates availability impact only; confidentiality and integrity impacts are listed as none.

3

What is the available remediation guidance?

Update to a Linux kernel build that includes the referenced fix. The provided data does not identify affected or fixed kernel version numbers.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203