CVE-2025-39744

Updated: 2026-02-27 03:05:51.327634

Description:

In the Linux kernel, the following vulnerability has been resolved: rcu: Fix rcu_read_unlock() deadloop due to IRQ work During rcu_read_unlock_special(), if this happens during irq_exit(), we can lockup if an IPI is issued. This is because the IPI itself triggers the irq_exit() path causing a recursive lock up. This is precisely what Xiongfeng found when invoking a BPF program on the trace_tick_stop() tracepoint As shown in the trace below. Fix by managing the irq_work state correctly. irq_exit() __irq_exit_rcu() /* in_hardirq() returns false after this */ preempt_count_sub(HARDIRQ_OFFSET) tick_irq_exit() tick_nohz_irq_exit() tick_nohz_stop_sched_tick() trace_tick_stop() /* a bpf prog is hooked on this trace point */ __bpf_trace_tick_stop() bpf_trace_run2() rcu_read_unlock_special() /* will send a IPI to itself */ irq_work_queue_on(&rdp->defer_qs_iw, rdp->cpu); A simple reproducer can also be obtained by doing the following in tick_irq_exit(). It will hang on boot without the patch: static inline void tick_irq_exit(void) { + rcu_read_lock(); + WRITE_ONCE(current->rcu_read_unlock_special.b.need_qs, true); + rcu_read_unlock(); + [neeraj: Apply Frederic's suggested fix for PREEMPT_RT]


Links NIST CIRCL RHEL Ubuntu

Severity

Severity Score
CVSS Version 2.x 0.0
CVSS Version 3.x HIGH 7.1

Status

OS name Project name Version Score Severity Status Errata Last updated

Statement

AlmaLinux 9.2 ESU kernel 5.14.0 7.1 HIGH Needs Triage 2025-11-30 10:12:20
CentOS 6 ELS kernel 2.6.32 7.1 HIGH Not Vulnerable 2026-01-07 20:27:26 Not affected: The bug only exists in kernels that include the irq_work-based RCU change introduced i...
CentOS 7 ELS kernel 3.10.0 7.1 HIGH Not Vulnerable 2025-12-17 15:30:33
CentOS 8.4 ELS kernel 4.18.0 7.1 HIGH Needs Triage 2025-11-30 10:12:18
CentOS 8.5 ELS kernel 4.18.0 7.1 HIGH In Testing 2026-02-06 10:02:38
CentOS Stream 8 ELS kernel 4.18.0 7.1 HIGH Needs Triage 2025-11-30 10:12:23
CloudLinux 7 ELS kernel 3.10.0 7.1 HIGH Not Vulnerable 2026-02-21 22:14:51 CloudLinux 6 and 7 support is limited and provided on demand. We strongly recommend upgrading to Clo...
Oracle Linux 6 ELS kernel 2.6.32 7.1 HIGH Not Vulnerable 2026-02-21 22:14:52 Not affected: The bug only exists in kernels that include the irq_work-based RCU change introduced i...
Oracle Linux 7 ELS kernel 3.10.0 7.1 HIGH Not Vulnerable 2026-02-21 22:14:51
Oracle Linux 7 ELS kernel-uek 5.4.17 7.1 HIGH Needs Triage 2025-11-30 08:52:34
Total: 16