CVE-2026-23056: uacce: implement mremap in uacce_vm_ops to return -EPERM
In the Linux kernel, the following vulnerability has been resolved:
uacce: implement mremap in uaccevmops to return -EPERM
The current uaccevmops does not support the mremap operation of vmoperationsstruct. Implement .mremap to return -EPERM to remind users.
The reason we need to explicitly disable mremap is that when the driver does not implement .mremap, it uses the default mremap method. This could lead to a risk scenario:
An application might first mmap address p1, then mremap to p2, followed by munmap(p1), and finally munmap(p2). Since the default mremap copies the original vma's vmprivatedata (i.e., q) to the new vma, both munmap operations would trigger vmaclose, causing q->qfr to be freed twice(qfr will be set to null here, so repeated release is ok).
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 6.1.176-1Fixed in 6.1.190-1Fixed in 6.12.107-1Fixed in 6.12.113-1Fixed in 7.2.12-1Fixed in 7.2.13-1 - Compensating control
Implement the .mremap operation in uacce_vm_ops to return -EPERM, explicitly disabling mremap for uacce mappings.
Event History
Frequently Asked Questions
What conditions are required to trigger the issue?
An application must use a uacce mapping and perform a sequence involving mmap, mremap, and unmapping both the original and remapped addresses. The issue arises when uacce_vm_ops does not implement mremap and the kernel uses the default mremap behavior.
What is the practical effect of the vulnerable mapping sequence?
Default mremap copies the VMA's vm_private_data to the new mapping, so unmapping each address can invoke vma_close twice for the same queue-related state. The described release path tolerates the repeated release because qfr is set to null.
What mitigation is provided by the fix?
The fix implements the uacce_vm_ops mremap operation to return -EPERM. This explicitly prevents mremap on affected uacce mappings.