Saltar al contenido
DUPIN
ALERTAS · EN VIVO
Contacto

VULNERABILIDAD

CVE-2026-98865 Autobloqueo en sched_ext al ejecutar ops.dequeue() con el lock del DSQ tomado

En el kernel de Linux, ops.dequeue() se invoca con el lock del DSQ de usuario de origen tomado en las rutas de consumo y movimiento; un planificador BPF que bloquee ese DSQ desde ops.dequeue() se autobloquea. Se mueve la invocación después de liberar el lock.

Alerta de Nureq Monitor

Detectada 18 OCT · 14:00

CVSS 3.1 · PRELIMINAR

—S/D

PROBABILIDAD DE EXPLOTACIÓN (EPSS)

0,2 % PERCENTIL 6

EXPLOTACIÓN ACTIVA

No confirmada

EXPLOIT PÚBLICO

No conocido

Qué es CVE-2026-98865

En el kernel de Linux, ops.dequeue() se invoca con el lock del DSQ de usuario de origen tomado en las rutas de consumo y movimiento; un planificador BPF que bloquee ese DSQ desde ops.dequeue() se autobloquea. Se mueve la invocación después de liberar el lock.

Productos y versiones afectadas

  • Linux

    • desde ebf1ccff79c43f860cbd2f9d6cfab9a462d0cb2d hasta antes de fe499ae9da46e297f578d4346c4c8e338c3118db
    • desde ebf1ccff79c43f860cbd2f9d6cfab9a462d0cb2d hasta antes de cb86607ada73185f321baa7f9d94a08a3a40bbf5
  • Linux

    • 7.1

Qué hacer

  1. Verificá si usás Linux y en qué versión: el rango afectado figura arriba.
  2. Actualizá a la versión corregida que indique el fabricante en su aviso (ver referencias) o aplicá la mitigación que publique.
  3. Revisá registros y accesos de los sistemas expuestos para descartar que se haya aprovechado antes de corregir.

Calculadora CVSS

Esta vulnerabilidad todavía no tiene vector CVSS publicado.

Abrir la calculadora completa

Descripción original

In the Linux kernel, the following vulnerability has been resolved: sched_ext: Don't run ops.dequeue() with a DSQ lock held ops.dequeue() is invoked with the source user DSQ's lock still held on the consume and move paths (scx_consume_dispatch_q(), move_task_between_dsqs()). A BPF scheduler which locks the source user DSQ from ops.dequeue() - e.g. by iterating it with bpf_iter_scx_dsq - self-deadlocks. ops.dequeue() can only call the "any" kfuncs and none of them can lock a builtin DSQ, so the global and bypass paths can't deadlock; however, all DSQ locks share one lockdep class, so iterating any user DSQ from ops.dequeue() on those paths trips the recursion check. Move the invocation after the DSQ unlock on all three paths. SCX_TASK_IN_CUSTODY is cleared under the lock serializing the transfer so that the callback is invoked exactly once.

Referencias

Historial de la alerta

  1. VULNERABILIDAD Nueva vulnerabilidad detectada.

CÓMO SE HIZOResumen traducido automáticamente al español a partir de la descripción original. Ante dudas, la descripción original y las referencias del fabricante son la fuente de verdad. Cómo funciona.