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/DPROBABILIDAD 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
Linux
Qué hacer
- Verificá si usás Linux y en qué versión: el rango afectado figura arriba.
- Actualizá a la versión corregida que indique el fabricante en su aviso (ver referencias) o aplicá la mitigación que publique.
- 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
- git.kernel.org/stable/c/fe499ae9da46e297f578d4346c4c8e338c3118db
- git.kernel.org/stable/c/cb86607ada73185f321baa7f9d94a08a3a40bbf5
Historial de la alerta
- 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.