CVE-2026-98865 in Linux
要約
〜によって VulDB • 2026年10月18日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
sched_ext: ops.dequeue() を DSQロック保持状態で実行しないこと
ops.dequeue() は、consumeパスおよびmoveパス(scx_consume_dispatch_q() および move_task_between_dsqs())において、ソースユーザーDSQのロックがまだ保持された状態で呼び出されます。BPFスケジューラで ops.dequeue() からソースユーザーDSQをロックする場合(例:bpf_iter_scx_dsq を使用してイテレートする)、デッドロックが発生します。
ops.dequeue() は「any」kfuncs のみを呼び出すことができ、それらのいずれも組み込み DSQ にロックをかけられないため、グローバルパスおよびバイパスパスではデッドロックは発生しません。しかし、すべての DSQ ロックが同じ lockdep クラスを共有しているため、これらのパスで ops.dequeue() から任意のユーザーDSQをイテレートすると、再帰チェックに引っかかります。
3つの全パスにおいて、呼び出しを DSQ アンロック後に移動します。SCX_TASK_IN_CUSTODY は、転送を直列化するロックの下でクリアされるため、コールバックは正確に1回だけ呼び出されます。
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.