CVE-2026-90305
Description
In the Linux kernel, the following vulnerability has been resolved: ARM: 9483/1: select HAVE_POSIX_CPU_TIMERS_TASK_WORK Commit c6e61c06d606 ("ARM: 9463/1: Allow to enable RT") enabled PREEMPT_RT on ARM but did not select HAVE_POSIX_CPU_TIMERS_TASK_WORK. This leaves CONFIG_POSIX_CPU_TIMERS_TASK_WORK disabled, so CPU timers expire in hard IRQ context. On PREEMPT_RT this makes run_posix_cpu_timers() take the sleeping sighand->siglock: BUG: sleeping function called from invalid context at spinlock_rt.c:48 rt_spin_lock from lock_task_sighand lock_task_sighand from run_posix_cpu_timers run_posix_cpu_timers from update_process_times ARM handles TIF_NOTIFY_RESUME on all return-to-user paths, including v7-M. ARM32 KVM host support was removed by commit 541ad0150ca4 ("arm: Remove 32bit KVM host support"), so the select need not be conditional on KVM. Select it to defer POSIX CPU timer expiry to task context. Reproduced with setrlimit(RLIMIT_CPU, ...) and a busy loop. The same path is used by setitimer(ITIMER_PROF or ITIMER_VIRTUAL) and POSIX CPU timers created with timer_create().
How to fix
- Linux Linux8de56782d6e5ba7a9f8c820342dccde65502f93f, 8a58a41100ea377e978d99600ec24a9bd0273662 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| Linux Linux | c6e61c06d6061750597e79c598acb5dead44c35b ≤ v < 8de56782d6e5ba7a9f8c820342dccde65502f93f, c6e61c06d6061750597e79c598acb5dead44c35b ≤ v < 8a58a41100ea377e978d99600ec24a9bd0273662, 7.1 | 8de56782d6e5ba7a9f8c820342dccde65502f93f, 8a58a41100ea377e978d99600ec24a9bd0273662 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.