Back to CVE records
Medium 5.5Published Apr 24, 2026

CVE-2026-31555futex: Clear stale exiting pointer in futex_lock_pi() retry path

Updated under an hour ago ()

Does this affect you?

It affects Linux and 4 other products. Add what you run to find out whether that includes you.

No exploitation reported and no EPSS estimate yet.

In the Linux kernel, the following vulnerability has been resolved: futex: Clear stale exiting pointer in futex_lock_pi() retry path Fuzzying/stressing futexes triggered: WARNING: kernel/futex/core.c:825 at wait_for_owner_exiting+0x7a/0x80, CPU#11: futex_lock_pi_s/524 When futex_lock_pi_atomic() sees the owner is exiting, it returns -EBUSY and stores a refcounted task pointer in 'exiting'. After wait_for_owner_exiting() consumes that reference, the local pointer is never reset to nil. Upon a retry, if futex_lock_pi_atomic() returns a different error, the bogus pointer is passed to wait_for_owner_exiting(). CPU0 CPU1 CPU2 futex_lock_pi(uaddr) // acquires the PI futex exit() futex_cleanup_begin() futex_state = EXITING; futex_lock_pi(uaddr) futex_lock_pi_atomic() attach_to_pi_owner() // observes EXITING *exiting = owner; // takes ref return -EBUSY wait_for_owner_exiting(-EBUSY, owner) put_task_struct(); // drops ref // exiting still points to owner goto retry; futex_lock_pi_atomic() lock_pi_update_atomic() cmpxchg(uaddr) *uaddr ^= WAITERS // whatever // value changed return -EAGAIN; wait_for_owner_exiting(-EAGAIN, exiting) // stale WARN_ON_ONCE(exiting) Fix this by resetting upon retry, essentially aligning it with requeue_pi.

CVSS
5.5 MEDIUM (v3.1, NVD)CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness (CWE)
Not given
Known exploited
Not in CISA's KEV catalog
EPSS (exploitation in the next 30 days)
Not loaded for this CVE
Assigned by
Linux
NVD analysis
Modified
Record last updated
Oct 15, 2026
First seen by InfoSec Signals
Oct 9, 2026

Affected products

Affected products
Linux Linux
linux:linux (from the name)
from 3ef240eaff36b8119ac9e2ea17cbf41179c930ba before 33095ae3bdde5e5c264d7e88a2f3e7703a26c7aa; from 3ef240eaff36b8119ac9e2ea17cbf41179c930ba before e7824ec168d2ac883a213cd1f4d6cc0816002a85; from 3ef240eaff36b8119ac9e2ea17cbf41179c930ba before 5e8e06bf8909e79b4acd950cf578cfc2f10bbefa; from 3ef240eaff36b8119ac9e2ea17cbf41179c930ba before de7c0c04ad868f2cee6671b11c0a6d20421af1da; from 3ef240eaff36b8119ac9e2ea17cbf41179c930ba before 7475dfad10a05a5bfadebf5f2499bd61b19ed293; from 3ef240eaff36b8119ac9e2ea17cbf41179c930ba before 92e47ad03e03dbb5515bdf06444bf6b1e147310d; from 3ef240eaff36b8119ac9e2ea17cbf41179c930ba before 71112e62807d1925dc3ae6188b11f8cfc85aec23; from 3ef240eaff36b8119ac9e2ea17cbf41179c930ba before 210d36d892de5195e6766c45519dfb1e65f3eb83; and 10 more ranges
CNA record
Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP
siemens:simatic_s7_1500_cpu_1518_4_pn_dp_mfp (from the name)
from V3.1.6
CISA ADP
Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP
siemens:simatic_s7_1500_cpu_1518f_4_pn_dp_mfp (from the name)
from V3.1.6
CISA ADP
Siemens SIPLUS S7-1500 CPU 1518-4 PN/DP MFP
siemens:siplus_s7_1500_cpu_1518_4_pn_dp_mfp (from the name)
from V3.1.6
CISA ADP
linux linux_kernel
linux:linux_kernel
from 4.4.255 before 4.5; from 4.9.255 before 4.10; from 4.14.158 before 4.15; from 4.19.172 before 4.20; from 5.4.1 before 5.5; from 5.5.1 before 5.10.253; from 5.11 before 5.15.203; from 5.16 before 6.1.168; and 12 more ranges
NVD

References

  • patch
  • patch
  • patch
  • patch
  • patch
  • patch
  • patch
  • patch

The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.

Your cookie choices
We use essential cookies to run this site, and, only with your consent, an advertising cookie from Google to measure whether our ads lead to sign-ups and subscriptions. See our for details.