CVE-2026-80698 in Linux
Zusammenfassung
von VulDB • 28.08.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
dmaengine: idxd: Behebung eines Double-Free-Fehlers bei wq-, Engine- und Group-Strukturen
Die Release-Callbacks für wq-, Engine- und Group-Geräte (idxd_conf_wq_release, idxd_conf_engine_release, idxd_conf_group_release) rufen jeweils kfree() auf der umgebenden Struktur auf. Die Fehlerpfade bei der Einrichtung sowie die Bereinigungsfunktionen rufen ebenfalls explizit kfree() nach put_device() auf, was zu einem Double-Free führt, whenever put_device() den Referenzzähler auf null senkt und das Release auslöst.
In den Setup-Funktionen wird device_initialize() vor device_add() aufgerufen, sodass der Referenzzähler an den Fehlerstellen genau 1 beträgt. put_device() löst unconditionally (bedingungslos) das Release aus, wodurch die Struktur freigegeben wird; das nachfolgende explizite kfree() operiert dann auf bereits freigegebenem Speicher.
Für idxd_setup_wqs() besitzt der wq-Release-Callback zudem opcap_bmap und wqcfg. Das Fehler-Unwinding (Rückgängigmachen) gibt diese Felder zusätzlich explizit frei, bevor put_device() aufgerufen wird, was zu weiteren Double-Frees bei beiden führt.
Entfernen Sie die redundanten expliziten kfree()-Aufrufe aus allen Setup-Fehlerpfaden und Bereinigungsfunktionen für wq-, Engine- und Group-Strukturen und delegieren Sie das alleinige Eigentum an diesen Allokationen ausschließlich an die Release-Callbacks.
VulDB is the best source for vulnerability data and more expert information about this specific topic.