CVE-2026-63878

Summary

In the Linux kernel, the following vulnerability has been resolved:

drm/amdgpu: check num_entries in GEM_OP GET_MAPPING_INFO

kvcalloc(args->num_entries, sizeof(*vm_entries), GFP_KERNEL) at amdgpu_gem.c:1050 uses the user-supplied num_entries directly without any upper bounds check. Since num_entries is a __u32 and sizeof(drm_amdgpu_gem_vm_entry) is 32 bytes, a large num_entries produces an allocation exceeding INT_MAX, triggering WARNING in __kvmalloc_node_noprof(), causing a kernel WARNING, TAINT_WARN, and panic on CONFIG_PANIC_ON_WARN=y systems.

Add a size bounds check before we invoke the kvzalloc() to reject oversized num_entries early with -EINVAL.

(cherry picked from commit 1fe7bf5457f6efd7be60b17e23163ba54341d73d)

Affected Software

VendorProductVersion RangeStatus
LinuxLinux4d82724f7f2b847eb0454b1aab5450545b39abd4 < f059b4c493df3e54fe3ffe4658009c31864275daaffected
LinuxLinux4d82724f7f2b847eb0454b1aab5450545b39abd4 < 967a00b8e06a7734aded23861faba9ee2462be87affected
LinuxLinux4d82724f7f2b847eb0454b1aab5450545b39abd4 < a1ba4594232c87c3b8defd6f89a2e40f8b08395daffected
LinuxLinux6.18affected
LinuxLinux0 < 6.18unaffected
LinuxLinux6.18.35 <= 6.18.*unaffected
LinuxLinux7.0.12 <= 7.0.*unaffected
LinuxLinux7.1 <= *unaffected

Weaknesses

References