CyberRota Analysis
AI-GeneratedThe vulnerability affects the Linux kernel's handling of Virtual Memory Areas (VMAs) marked with VM_IO or VM_PFNMAP, which are not compatible with the GPUSVM functionality that requires backing by struct page objects. Exploitation can lead to repeated failures in the get_pages() function, potentially causing an infinite loop in the driver’s page-fault handler, which may disrupt system stability. Linux kernel maintainers and developers working with GPU virtualization should prioritize addressing this issue to ensure system reliability and prevent potential denial-of-service conditions.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: drm/gpusvm: Reject VMAs with VM_IO or VM_PFNMAP when creating SVM ranges VMAs marked with VM_IO or VM_PFNMAP are not backed by struct page objects, which GPUSVM requires in order to operate correctly. In particular, get_pages() relies on hmm_range_fault() to resolve struct pages for the target range. Attempting to create an SVM range on such VMAs results in repeated get_pages() failures and can lead to an infinite loop inside a driver’s page‑fault handler. Prevent this by rejecting ranges on VM_IO or VM_PFNMAP VMAs and returning -EIO.