In the Linux kernel, the following vulnerability has been resolved:
futex: Fix race on the initial mm->futex.phash.ref allocation
futex_hash_allocate() allocates mm->futex.phash.ref without any locking. Commit d9b05321e21e ("futex: Move futex_hash_free() back to __mmput()") moved the allocation here and assumed that the process has just a single thread at this point.
Commit ee9dce44362b ("futex: Drop CLONE_THREAD requirement for private default hash alloc") widened need_futex_hash_allocate_default() to cover any CLONE_VM clone, but left out vfork because the parent is suspended and cannot race.
That no longer holds once vfork is nested. If a vfork child calls vfork again and is then killed with SIGKILL, the parent is released from its vfork wait and runs concurrently with the grandchild in the same mm. Neither of them went through futex_hash_allocate_default().
When both call prctl(PR_FUTEX_HASH, PR_FUTEX_HASH_SET_SLOTS) at the same time, each one sees mm->futex.phash.ref as NULL and stores its own percpu counter. Only the last store survives. The counter stored first is no longer reachable from the mm, so the references on it are not seen by __futex_ref_atomic_end(). A private hash that still has references is then considered dead and freed, and a task that still holds one of its buckets writes into freed memory in futex_q_lock().
Store the counter once with cmpxchg() and let the loser free_percpu() its own. The initial reference has to be taken before the store, otherwise another task can install a private hash while the counter is still 0.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-64k-debug-modules-coreUpgrade kernel-toolsUpgrade kernel-64k-modules-extraUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-64k-debug-develUpgrade kernel-rt-64k-modules-coreUpgrade kernel-rt-64k-debug-modulesUpgrade kernel-rt-64kUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-debug-modules-extraUpgrade kernel-devel-matchedUpgrade kernel-zfcpdump-coreUpgrade kernel-rt-64k-debug-coreUpgrade kernel-uki-virtUpgrade kernel-debug-modulesUpgrade kernel-64k-coreUpgrade kernel-debug-devel-matchedUpgrade kernel-64k-debugUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-rt-modules-coreUpgrade kernel-rt-64k-develUpgrade rvUpgrade kernel-rt-64k-modulesUpgrade kernel-abi-stablelistsUpgrade kernel-debug-modules-extraUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-rt-modulesUpgrade kernel-docUpgrade kernel-rt-64k-modules-extraUpgrade kernel-debug-modules-coreUpgrade kernel-64k-debug-modules-extraUpgrade kernel-64k-devel-matchedUpgrade kernel-rtUpgrade kernel-zfcpdumpUpgrade libperfUpgrade kernel-rt-debug-coreUpgrade kernel-rt-debug-modules-coreUpgrade kernel-tools-libs-develUpgrade kernel-uki-virt-addonsUpgrade kernel-rt-64k-debug-modules-coreUpgrade kernel-64k-debug-modulesUpgrade kernel-tools-libsUpgrade kernel-64k-develUpgrade kernel-rt-debugUpgrade kernel-64k-modules-coreUpgrade kernel-64kUpgrade kernel-rt-debug-modulesUpgrade kernel-rt-modules-extraUpgrade kernel-modules-extraUpgrade kernel-64k-debug-develUpgrade kernel-debugUpgrade kernel-headersUpgrade kernel-develUpgrade kernel-rt-64k-coreUpgrade kernel-zfcpdump-develUpgrade kernel-rt-develUpgrade kernel-debug-develUpgrade kernelUpgrade kernel-debug-coreUpgrade kernel-rt-64k-debug-modules-extraUpgrade kernel-coreUpgrade kernel-modulesUpgrade kernel-debug-uki-virtUpgrade kernel-cross-headersUpgrade kernel-modules-coreUpgrade perfUpgrade kernel-rt-64k-debugUpgrade rtlaUpgrade kernel-64k-modulesUpgrade kernel-rt-debug-develUpgrade kernel-rt-coreUpgrade kernel-zfcpdump-modules-extraUpgrade python3-perfUpgrade kernel-64k-debug-core | Oct 11, 2026 | Oct 1, 2026 |
| Amazon_linux_2023 | — | Upgrade kernel6.18-modules-extraUpgrade kernel6.18-develUpgrade perf6.18-debuginfoUpgrade kernel6.18-tools-develUpgrade kernel6.18-debuginfoUpgrade kernel6.18-toolsUpgrade kernel-livepatch-6.18.48-107.148Upgrade microvm-kernel6.18Upgrade kernel6.18-headersUpgrade bpftool6.18-debuginfoUpgrade kernel6.18-debuginfo-common-x86_64Upgrade python3-perf6.18-debuginfoUpgrade kernel6.18-modules-extra-commonUpgrade kernel6.18-tools-debuginfoUpgrade perf6.18Upgrade kernel6.18-debuginfo-common-aarch64Upgrade python3-perf6.18Upgrade bpftool6.18Upgrade kernel6.18 | Oct 6, 2026 | Sep 4, 2026 |
| Redhat_linux | — | Upgrade kernelUpgrade kernel-rtNo solution exists | Oct 1, 2026 | Sep 4, 2026 |
| Rocky_linux | — | Upgrade perfUpgrade libperfUpgrade kernel-tools-libs-develUpgrade kernel-rt-coreUpgrade kernel-zfcpdump-debuginfoUpgrade python3-perfUpgrade kernel-uki-virtUpgrade kernel-modules-coreUpgrade perf-debuginfoUpgrade kernel-develUpgrade kernel-zfcpdump-coreUpgrade kernel-debug-devel-matchedUpgrade kernel-rt-debug-develUpgrade libperf-debuginfoUpgrade kernel-devel-matchedUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-debuginfoUpgrade kernel-coreUpgrade python3-perf-debuginfoUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-modulesUpgrade kernel-rt-debug-modules-coreUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-modules-extraUpgrade kernel-rt-debug-modulesUpgrade kernel-rt-debug-coreUpgrade kernel-modules-extraUpgrade kernel-zfcpdumpUpgrade kernel-debug-develUpgrade kernel-debug-coreUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-rt-modules-coreUpgrade kernelUpgrade kernel-debug-debuginfoUpgrade kernel-toolsUpgrade kernel-rtUpgrade kernel-debuginfo-common-s390xUpgrade kernel-debug-modules-extraUpgrade kernel-debugUpgrade kernel-zfcpdump-develUpgrade kernel-debug-modules-coreUpgrade kernel-uki-virt-addonsUpgrade kernel-rt-debugUpgrade kernel-debug-uki-virtUpgrade kernel-debug-modulesUpgrade kernel-rt-debuginfoUpgrade kernel-modulesUpgrade kernel-rt-develUpgrade rvUpgrade rtlaUpgrade kernel-tools-libsUpgrade kernel-debuginfoUpgrade kernel-zfcpdump-modules-extra | Oct 5, 2026 | Oct 3, 2026 |
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub