drm/panthor: Add vm_bind region with kbo range overlap check
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.12.114, 6.18.57, 7.2.6
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: drm/panthor: Add vm_bind region with kbo range overlap check When a VM is created, caller has to specify the range of the address space carve-out set aside for mapping kernel BO's. That means vm_bind mappings of UM-exposed BO's should not intersect with that region, but at the moment we're not checking this. At first, I thought of giving these values to drm_gpuvm_init() through its reserve_{offset, range} arguments, but it turns out that is meant for VM address spans that are not managed through the usual drm_gpuvm split/merge circuit, so storing the end of the user VA range at VM creation time and doing a quick check in the vm_bind ioctl path was the simplest workaround. The new check also makes sure vm_bind range doesn't overflow the size of a 64-bit unsigned integer. That was already being done further down the call stack inside drm_gpuvm_sm_map -> drm_gpuvm_range_valid, but it's best to fail early in the driver before GPUVM functions are invoked so that we won't waste time allocating vm_bind context resources.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 647810ec247641eb5aec8caef818919a4518a0b1 · fixed in 276753aaad65e6f7dac7989a600c1c2d3a382c1a; From 647810ec247641eb5aec8caef818919a4518a0b1 · fixed in f2be47fa8e225968eb66863657143fe900ec4bca; From 647810ec247641eb5aec8caef818919a4518a0b1 · fixed in 761cf9c63274a5b711c3dc829601723215710d2d; From 647810ec247641eb5aec8caef818919a4518a0b1 · fixed in 985f5e12f3cdf43030e13c2bbd154913133b5c3f
- Linux Linux
6.10
- KernelLinux
From 6.10.0 · fixed in 6.12.114; From 6.13.0 · fixed in 6.18.57; From 6.19.0 · fixed in 7.2.6