PT-2026-116729 · Linux · Linux
CVE-2026-98510
·
Published
2026-10-18
·
Updated
2026-10-18
None
No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
In the Linux kernel, the following vulnerability has been resolved:
drm/xe/vm: nuke PTs only after unlinking contested VMAs
In xe vm close and put(), external-BO VMAs are queued on the contested
list for deferred destruction via xe vma destroy unlocked(). However,
xe vm pt destroy() was previously invoked before processing contested
VMAs, destroying vm->pt root while those VMAs were still linked to their
respective buffer objects (vm bo->list.gpuva).
If a concurrent thread evicts one of those shared buffer objects,
xe bo trigger rebind() holding only bo->resv walks the BO's VMAs and, in
fault mode, calls xe vm invalidate vma() -> xe pt zap ptes(). Because
vm->pt root[tile->id] is already NULL, dereferencing pt->level causes a
NULL ptr deref.
Fix this by deferring xe vm free scratch() and xe vm pt destroy() until
after all contested VMAs have been unlinked and destroyed.
User is reporting hitting a NULL ptr deref in xe pt zap ptes(), which
could be explained by this race.
(cherry picked from commit c2863648959489767f08892fd6e90577d2ea0b6a)
Found an issue in the description? Have something to add? Feel free to write us 👾
Related Identifiers
Affected Products
Linux