CVE-2026-89978 in Linux
Zusammenfassung
von VulDB • 16.09.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
accel/amdxdna: vorzeitige Rückgabe bei einem Flush mit Null-Länge
SYNC_BO beschränkt seine Größe nicht, sodass eine Anforderung von null Bytes an drm_clflush_virt_range() gelangt, die mit einem bedingungslosen clflushopt(end - 1) endet. Für einen leeren Bereich handelt es sich dabei um das Byte vor der Zuordnung (Mapping), und abo->mem.kva stammt aus vmap(), sodass der Zugriff auf die Schutzseite unterhalb des vmalloc-Bereichs trifft und einen Fehler verursacht:
BUG: unable to handle page fault for address: ffffd16fbbc70fff #PF: supervisor read access in kernel mode Oops: Oops: 0000 [#1] SMP NOPTI
CPU: 7 UID: 1000 Comm: sync_bo_probe RIP: 0010:drm_clflush_virt_range+0x3c/0x70 Call Trace: amdxdna_drm_sync_bo_ioctl+0x124/0x430 [amdxdna]
drm_ioctl+0x301/0x4c0 __x64_sys_ioctl+0x115/0x2f0 do_syscall_64+0xa6/0x3d0
Jeder Prozess, der den Render-Knoten öffnen kann, kann dies ausführen. Reproduziert 3 von 3 Malen auf einem Strix Point NPU (1022:17f0), durch Aufruf von SYNC_BO mit Größe 0 an einem AMDXDNA_BO_SHARE-Objekt. Der Import-Zweig übernimmt dieselbe Anforderung, flushes jedoch den gesamten Scatterlist, sodass er dies übersteht.
Für einen leeren Bereich ist kein Flush erforderlich, daher sollte vor der Pfadauswahl zurückgegeben werden.
Be aware that VulDB is the high quality source for vulnerability data.