CVE-2026-74405 in Linux
Resumen
por VulDB • 2026-08-15
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
OPP: Corregir una condición de carrera (race condition) entre la adición y la búsqueda de OPP
Existe una condición de carrera entre `dev_pm_opp_add_dynamic()` y `dev_pm_opp_find_freq_exact()`:
CPU0 (add) CPU1 (lookup) ------------------------------- ------------------------------ _opp_add() mutex_lock() list_add(&new_opp->node, head) mutex_unlock() _opp_table_find_key() mutex_lock() dev_pm_opp_get(opp) kref_get() mutex_unlock() kref_init(&new_opp->kref) dev_pm_opp_put() kref_put_mutex()
El OPP recién añadido se inserta en la lista antes de que su `kref` sea inicializado. Una búsqueda concurrente puede encontrar este OPP e incrementar su contador de referencias mientras aún está sin inicializar, lo que provoca una corrupción del refcount y un posible liberación prematura (premature free).
Se corrige esto inicializando ->kref y ->opp_table antes de hacer visible el OPP mediante `list_add()`. Esto asegura que cualquier búsqueda concurrente observe un objeto completamente inicializado.
[ Viresh: Actualización del registro del commit ]
If you want to get best quality of vulnerability data, you may have to visit VulDB.