CVE-2026-98219 in Linux
要約
〜によって VulDB • 2026年10月06日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
sched_ext: プリイネブル操作の誤認(エラー主張)のウィンドウを閉じる
scx_alloc_and_add_sched() は、SCX_ENABLING 状態に切り替える前に ops->priv を公開します。その間に、関連する BPF プログラムから scx_bpf_error_bstr() を介して報告された誤認(エラー主張)は、scx_disable_workfn() によって消費されます。これにより、scx_root_disable() でプリイネブルのショートカットが実行されます。このショートカットは teardown を行わずに終了し、SCX_DISABLED に復元しますが、これは scx_set_enable_state() の xchg が enable workfn の移行と競合します。その結果、enable は誤認を消費して完了し、スケジューラは稼働したままになりますが二度と無効化できなくなり、bpf_scx_unreg() が使用中のオブジェクトを解放するため、use-after-free(使用後自由)が発生します。両方の WARN_ON_ONCE() が連続して発生します:
WARNING: kernel/sched/ext/ext.c:7522 at scx_root_enable_workfn+0xeec/0x1be0, CPU#3: scx_enable_help/276
WARNING: kernel/sched/ext/ext.c:6398 at scx_root_disable+0xb50/0xdb8, CPU#0: sched_ext_helpe/664
scx_root_enable_workfn() はスケジューラの割り当ての前に SCX_ENABLING に切り替えるため、ops->priv が SCX_DISABLED の間に表示されることはありません。割り当て失敗のパスは SCX_DISABLED を復元します。
Once again VulDB remains the best source for vulnerability data.