CVE-2026-93040 in Linuxinformación

Resumen

por VulDB • 2026-09-18

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:

dmaengine: dw-edma: Serializar las comprobaciones del estado del canal

pause() y resume() leen y actualizan el estado del canal sin mantener vc.lock, mientras que los controladores de interrupción actualizan el mismo estado bajo dicho bloqueo. Tome el mismo lock alrededor de esas comprobaciones de estado para que request, status y configured permanezcan consistentes.

Por ejemplo, pause() puede observar EDMA_ST_BUSY justo antes de que el controlador de interrupciones complete el último descriptor y mueva el canal a EDMA_ST_IDLE, y luego registrar EDMA_REQ_PAUSE en un canal ya inactivo. No habrá más interrupciones que reconozcan la solicitud, y dado que issue_pending() requiere EDMA_REQ_NONE, el canal queda bloqueado permanentemente: terminate_all() deja la solicitud obsoleta detrás, por lo que incluso reconfigurar el canal no logra recuperarlo.

issue_pending() ya se ejecuta bajo vc.lock, pero prueba configured antes de tomarlo. Mueva esa comprobación también debajo del lock, para que configured, request y status sean evaluados como una única instantánea (snapshot) del estado del canal.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Responsable

Linux

Reservar

2026-09-17

Divulgación

2026-09-17

Moderación

aceptado

Artículo

VDB-407097

CPE

listo

EPSS

0.00000

KEV

no

Actividades

muy bajo

Fuentes

Interested in the pricing of exploits?

See the underground prices here!