Read the docs
TI-2026-83892 Aliases CVE-2026-99227GHSA-4rq4-jvm7-h89f

Reference counter wrap in Linux kernel io_uring waitid cancellation

Priority LOW 33Published · Updated

Key facts

Attack vector
Local
Privileges required
Low
User interaction
None
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
High · High · High
Fix status
Partial Red Hat: 4 without a fix

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and Red Hat.

Summary

The Linux kernel from 6.7 is affected. In the io_uring waitid cancellation path, a reference counter is incremented even when another path already owns the request, and repeated failed cancellation attempts can wrap the counter to zero, letting a later cancellation complete the request a second time. A local user with low privileges can cause high confidentiality, integrity and availability impact.

Written with Claude Haiku 5.5 from the sources below · 2026-11-04

Description from the CNA

In the Linux kernel, the following vulnerability has been resolved: io_uring/waitid: prevent cancel reference wrap io_waitid packs the cancellation state into bit 31 of ->refs and uses bits 30:0 as a 31-bit reference counter: #define IO_WAITID_CANCEL_FLAG BIT(31) #define IO_WAITID_REF_MASK GENMASK(30, 0) __io_waitid_cancel() marks a request canceled, then increments the low bits of ->refs to claim completion ownership. When another path owns the request, the increment remains even though cancellation returns false. The request remains discoverable by cancellation, so repeated failed attempts can wrap the 31-bit reference field to zero. A later cancellation can claim ownership and complete the request a second time. Use atomic_fetch_or() when setting the cancel flag and inspect the old flag value. The first cancel attempt continues to the existing ownership increment, preserving its wake and issuer handoff semantics. Later attempts see the cancel flag and return without incrementing the reference field. This makes repeated failed cancellation attempts idempotent while leaving the first-cancel state transitions unchanged.

Why it matters now

EPSS 0.0012 1st percentileScored 2026-11-07
Fix Partial Linux (Linux): 6.12.115, 6.18.60, 7.2.14 +2Red Hat: 4 without a fix

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
LinuxLinux6.7 and later6.12.115, 6.18.60, 7.2.14, 7.3.1, 7.4-rc1Patch availableCNA
  • Linux VendorLinux Affected 6.7 and later Fixed in 6.12.115, 6.18.60, 7.2.14, 7.3.1, 7.4-rc1 Patch available CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*——Linux
  • cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* Versions — — ·Linux

Remediation

Fixed Linux kernel versions are 6.12.115, 6.18.60, 7.2.14, 7.3.1 and 7.4-rc1. Red Hat Enterprise Linux 10 and 9 and Red Hat OpenShift Container Platform 4 and 5 are affected, with Red Hat's plan listed as none available.

Written with Claude Haiku 5.5 from the sources below · 2026-11-04

  • Fix · CNA Linux (Linux) Fixed in 6.12.115, 6.18.60, 7.2.14, 7.3.1, 7.4-rc1

Vendor assessments

Red Hat

Red Hat rating: Important. Red Hat's page for this CVE →

ProductStatusPlan or fix
Red Hat Enterprise Linux 10AffectedNo fix yet
Red Hat Enterprise Linux 9AffectedNo fix yet
Red Hat OpenShift Container Platform 4AffectedNo fix yet
Red Hat OpenShift Container Platform 5AffectedNo fix yet
Not affected: 5 products
  • Red Hat Enterprise Linux 6
  • Red Hat Enterprise Linux 7
  • Red Hat Enterprise Linux 8
  • Red Hat Enterprise Linux 9
  • Red Hat OpenShift Container Platform 4

Timeline

  1. 2026-11-02 Threatist record created from CVE-2026-99227
  2. 2026-11-02 Alias added: GHSA-4rq4-jvm7-h89f
  3. 2026-11-03 Fix available: Linux/[email protected], Linux/Linux@98787d3fa4e99564d2b2bc21255b21f670c450d0 · CNA
  4. 2026-11-03 1 new reference · CNA
  5. 2026-11-04 Priority changed: MEDIUM → LOW
  6. 2026-11-04 Affected versions changed · Red Hat
  7. 2026-11-04 CVSS score added · Red Hat

References

  • TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
  • TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
  • TI-2021-02452 Incorrect authorization in Ubuntu linux kernel KEVCVSS 3.1HIGH 8.8
  • TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
  • TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
  • TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
See all 21741 →

Sources