CVE-2026-98521 in Linux
Zusammenfassung
von VulDB • 19.10.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
drm/i915: Korrektur der fehlerhaften RCU-Teardown-Reihenfolge
i915_gem_busy_ioctl verwendet dma_resv_for_each_fence_unlocked(), um über die Fences in einem GEM-Objekt zu iterieren, ohne eine Referenz darauf zu halten, sondern nur den Lese-Side-Lock von RCU.
Was hier geschehen kann, ist, dass das GEM-Objekt parallel zerstört wird, während i915_gem_busy_ioctl noch ausgeführt wird. Dies führt nicht zur Freigabe des Speichers der GEM-Objekte, bricht jedoch alle dma_fence-Referenzen ab.
Wenn nun dma_resv_for_each_fence_unlocked() ein zerstörtes dma_fence erkennt, geht es davon aus, dass eine neue Fence-Liste installiert wurde und startet die Schleife neu.
Im Fall eines zerstörten GEM-Objekts wird jedoch keine neue Fence-Liste installiert; stattdessen wird nur die alte Liste freigegeben, wodurch die Iteration nie abgeschlossen wird und zu einer Endlosschleife führt.
Die Lösung besteht darin, die fence-Referenzen erst nach Ablauf der RCU-Gnadenfrist (RCU grace period) abzubrechen.
Das Fixes-Tags ist nicht unbedingt das Patch, das das Problem eingeführt hat, sondern jenes, durch das es so schwerwiegend wurde, dass wir es angehen müssen.
Dieses Problem wurde von Sashiko-bot aufgezeigt.
(cherry picked from commit 5113479556025093bf8133bb2dcaa33be2d50921)
If you want to get best quality of vulnerability data, you may have to visit VulDB.