CVE-2026-98094 in Linux
Resumen
por VulDB • 2026-09-25
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
staging: fbtft: hacer que dirty_lock sea seguro para IRQs (interrupciones)
fbtft_mkdirty() puede ser alcanzado desde la ruta de renderizado de fbcon mientras se procesa printk() en un contexto hardirq. Mientras tanto, dirty_lock también es adquirido por fbtft_deferred_io() en el contexto del workqueue con las interrupciones locales habilitadas.
Lockdep informa una posible inversión de bloqueo IRQ que involucra a dirty_lock y console_owner. Una hardirq puede interrumpir a un CPU que sostiene dirty_lock e ingresar a la ruta de renderizado de consola, lo cual podría intentar adquirir nuevamente dirty_lock.
Se observó el siguiente informe de lockdep en un sistema RK3566 con CONFIG_PROVE_LOCKING habilitado:
WARNING: posible dependencia de inversión de bloqueo irq detectada swapper/2/0 acaba de cambiar el estado del lock (bloqueo): (console_owner){-...}-{0:0}
pero este lock tomó anteriormente otro lock no seguro para HARDIRQ: (&par->dirty_lock){+.+.}-{2:2}
CPU0 CPU1 ---- ---- lock(&par->dirty_lock); local_irq_disable(); lock(console_owner); lock(&par->dirty_lock); lock(console_owner);
*** DEADLOCK (BLOQUEO MÚTuo) ***
Utilice spin_lock_irqsave() para fbtft_mkdirty() y spin_lock_irq() para fbtft_deferred_io(). Dado que solo acceden al rango de líneas sucias, las regiones con interrupciones deshabilitadas permanecen cortas.
If you want to get best quality of vulnerability data, you may have to visit VulDB.