UBUNTU-CVE-2026-80758: Use After Free
In the Linux kernel, the following vulnerability has been resolved: futex: Avoid private hash use-after-free on final put futexprivatehashput() drops the reference to fph before evaluating fph->mm for wakeupvar(). futexrefput() enables preemption again before returning. If that put drops the final reference and the task is preempted, another task can pivot to the replacement hash and free the old hash after an RCU grace period. The first task then reads fph->mm from the freed allocation when it resumes. KASAN reports a slab-use-after-free in futexprivatehashput(), with the read at offset 24 in a freed kmalloc-512 allocation. The allocation and free stacks point to futexhashallocate() and the RCU free path, respectively. Load the mm pointer while the fph reference is still held and pass the saved value to wakeupvar(). wakeupvar() uses the pointer as a waitqueue key and does not dereference the mm through it.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
ubuntu/linux-hwe-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42~24.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1~24.04.1 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 7.0.0-42.42 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 7.0.0-1016.17 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 7.0.0-1016.18 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oem-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 7.0.0-1015.16 - Upgrade
Upgrade
ubuntu/linux-riscvto a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1
Event History
Frequently Asked Questions
Which Ubuntu kernel package variants are identified as affected?
The listed affected software includes ubuntu/linux-riscv, ubuntu/linux-realtime, ubuntu/linux-hwe-edge, ubuntu/linux-azure, ubuntu/linux-gcp, ubuntu/linux-azure-fde, ubuntu/linux-gke, and ubuntu/linux-aws-5.0.
What race condition is required to trigger the use-after-free?
The final reference to a private futex hash must be dropped, then the task must be preempted before it reads the hash object's mm field. During that interval, another task can switch to a replacement hash and free the old hash after an RCU grace period.
How can this issue manifest on an affected system?
KASAN can report a slab use-after-free in futex_private_hash_put() when it reads fph->mm. The reported access is a read at offset 24 of a freed kmalloc-512 allocation.
What does the upstream fix change?
The fix saves the mm pointer while the private hash reference is still held, then passes that saved pointer to wake_up_var(). This avoids reading fph->mm after the final reference may have released and freed the hash object.