CVE-2026-43326Linux内核sched_ext组件存在安全漏洞,由于SCX_KICK_WAIT在kick_cpus_irq_workfn()中采用忙等待机制,且运行在硬中断上下文,导致CPU无法重新调度。当多CPU形成等待循环时,会发生死锁,进而引发系统拒绝服务。本地低权限攻击者可利用此漏洞导致系统挂起。
该漏洞源于Linux内核sched_ext调度器扩展的逻辑缺陷。在kick_cpus_irq_workfn()函数中,代码尝试通过smp_cond_load_acquire()忙等待目标CPU的kick_sync标志更新。由于irq_work在硬中断上下文中运行,被阻塞的CPU无法进行重新调度,导致其自身的kick_sync标志无法更新。若多个CPU在调度过程中形成相互等待的闭环,系统将陷入死锁。攻击者需具备本地低权限,通过执行特制程序触发特定的调度交互,诱导CPU进入此状态。修复方案引入resched_curr(),将等待操作推迟至平衡回调中执行,并在等待期间释放rq锁,允许处理中断,从而避免死锁。