CVE-2026-80698 in Linuxinformation

Résumé

par VulDB • 28/08/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

dmaengine: idxd : correction d'une double libération (double free) des structures wq, engine et group

Les fonctions de rappel de libération pour les appareils wq, engine et group (idxd_conf_wq_release, idxd_conf_engine_release, idxd_conf_group_release) appellent chacune kfree() sur la structure englobante. Les chemins d'erreur lors de l'initialisation ainsi que les fonctions de nettoyage appellent également explicitement kfree() après put_device(), ce qui provoque une double libération chaque fois que put_device() fait passer le compteur de références à zéro et déclenche la fonction de libération.

Dans les fonctions d'initialisation, device_initialize() est appelé avant device_add(), de sorte que le compteur de référence est exactement égal à 1 au niveau des sites d'erreur. put_device() déclenche inconditionnellement la libération, ce qui libère la structure ; l'appel explicite kfree() suivant opère alors sur une mémoire déjà libérée.

Pour idxd_setup_wqs(), le rappel de libération wq possède également les champs opcap_bmap et wqcfg. Le déroulement en arrière (unwind) des erreurs libérait explicitement ces champs avant d'appeler put_device(), provoquant ainsi davantage de doubles libérations sur l'un comme sur l'autre.

Supprimez les appels kfree() explicites redondants dans tous les chemins d'erreur d'initialisation et les fonctions de nettoyage pour les structures wq, engine et group, en confiant la propriété exclusive de ces allocations aux rappels de libération.

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

Responsable

Linux

Réserver

26/08/2026

Divulgation

28/08/2026

Modérer

accepté

Entrée

VDB-396621

CPE

prêt

EPSS

0.00000

KEV

non

Activités

très faible

Sources

Do you need the next level of professionalism?

Upgrade your account now!