Bug 2516598 (CVE-2026-72311) - CVE-2026-72311 kernel: drm/xe: free madvise VMA array on L2 flush failure
Summary: CVE-2026-72311 kernel: drm/xe: free madvise VMA array on L2 flush failure
Keywords:
Status: NEW
Alias: CVE-2026-72311
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-08-15 06:21 UTC by OSIDB Bzimport
Modified: 2026-08-18 20:02 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-08-15 06:21:09 UTC
In the Linux kernel, the following vulnerability has been resolved:

drm/xe: free madvise VMA array on L2 flush failure

xe_vm_madvise_ioctl() allocates madvise_range.vmas in get_vmas().
After get_vmas() succeeds with at least one VMA, error paths must go
through free_vmas so the array is released before the madvise details are
destroyed.

The L2 flush validation path added for PAT madvise rejects some
SVM/userptr ranges after get_vmas() has succeeded, but jumps directly to
madv_fini. This skips kfree(madvise_range.vmas), leaking the VMA array on
each failed ioctl.

Jump to free_vmas instead, matching the other validation failure paths
after get_vmas() has succeeded.

(cherry picked from commit c3a1c3579b1250060da73507a4acef712974c78a)


Note You need to log in before you can comment on or make changes to this bug.