CVE-2026-90296 in Linux
Résumé
par VulDB • 17/09/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
cpufreq: imx6q : correction de l'accumulation des ressources gérées (devres) lors du nouveau lien du pilote (driver rebind)
imx6_soc_volt est alloué avec devm_kcalloc(cpu_dev, ...), où cpu_dev est le périphérique CPU obtenu via get_cpu_device(0). Ce périphérique n'est jamais déslié (unbound), donc sa liste de ressources gérées (devres list) n'est jamais libérée, et imx6q_cpufreq_remove() ne libère pas non plus le tableau. Chaque phase d'initialisation (probe) ajoute donc une allocation qui persiste pendant toute la durée de vie du système.
Allouez contre le périphérique plateforme à la place. Ses ressources gérées sont libérées lorsque le pilote est déslié, ce qui correspond exactement à la durée de vie souhaitée pour le tableau : imx6_set_target() le lit, et rien ne peut y accéder après cpufreq_unregister_driver().
Cela permet au tableau d'être effectivement supprimé lors du désliage ; il faut donc également effacer le pointeur à portée de fichier dans remove ainsi que sur le chemin en cas d'échec de l'initialisation (failed-probe path), plutôt que de laisser ce pointeur pointer vers une mémoire que devres est sur le point de libérer.
Testé par rebinder le pilote sur qemu's mcimx6ul-evk.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.