CVE-2026-93219: clocksource/drivers/timer-sun4i: Advertise a real minimum delta
In the Linux kernel, the following vulnerability has been resolved:
clocksource/drivers/timer-sun4i: Advertise a real minimum delta
sun4iclkevtnextevent() compensates for the timer stop/start synchronization delay by programming evt - TIMERSYNCTICKS into the hardware interval register. The clockevent device currently advertises TIMERSYNCTICKS as mindeltaticks, so the clockevents core is allowed to call setnextevent() with evt == TIMERSYNCTICKS.
That programs a zero-tick interval. With oneshot/highres/nohz timer operation this can leave the next event stuck, which was observed as a boot hang on Allwinner D1 after the clockevents core started reusing forced minimum-delta events.
Advertise one extra tick instead, so the smallest event accepted by the core still programs at least one hardware tick after the synchronization compensation.
Affected Software
Event History
Frequently Asked Questions
Which systems are most likely to experience this issue?
Systems using the Linux kernel's sun4i timer clockevent driver are affected. The issue was observed as a boot hang on Allwinner D1 when oneshot, high-resolution, or nohz timer operation is in use.
What condition triggers the failure?
The clockevents core must request a next event equal to the driver's advertised minimum delta. The driver then subtracts its synchronization compensation and programs a zero-tick hardware interval, which can leave the next event stuck.
What is the practical impact of a zero-tick interval?
A stuck next timer event can cause a boot hang. The described fix ensures that the smallest event accepted by the clockevents core still results in at least one hardware timer tick.