Description
In the Linux kernel, the following vulnerability has been resolved:

io_uring: defer eventfd signaling when queued from a wakeup handler

io_req_local_work_add() signals the CQ ring eventfd inline when it is the
one to push the first entry onto ->work_list. For DEFER_TASKRUN rings that
add is frequently done from a waitqueue wakeup handler, where an
arbitrary waitqueue lock is held.

eventfd_signal_mask() only refuses to recurse when current->in_eventfd
is set, but that bit is set by eventfd_signal_mask() itself. If the wake
chain starts somewhere else, signal goes out inline and can feed back
into epoll.

Add IOU_F_TWQ_IN_WAKE, set it on the task_work add done from the three
waitqueue callbacks, and use it to force io_eventfd_signal() down the
existing call_rcu_hurry() deferral instead of signaling inline.
Published: 2026-09-09
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability arises in the Linux kernel's io_uring implementation. When a wakeup handler queues work to the io_uring completion queue, the code signals the eventfd inline rather than deferring, causing recursion inside eventfd_signal_mask. Because the recursion flag is set only by the signalling function, the call can feed back into epoll and potentially trigger an unintended epoll callback. This race condition can lead to kernel instability or a denial of service. The weakness corresponds to a concurrency race (CWE-362).

Affected Systems

The flaw affects all Linux kernel versions that include the vulnerable io_uring code, and therefore all distributions that ship with those kernels are impacted. The issue is confined to kernel components and does not extend to user‑space code beyond those that use io_uring interfaces.

Risk and Exploitability

No CVSS score is provided and EPSS is not available, and the vulnerability is not listed in the CISA KEV catalog. While the flaw requires local kernel execution or a program that can trigger io_uring operations, it can potentially deliver a denial‑of‑service or crash if the recursive signalling reaches an epoll handler. The likely attack vector is local and depends on exploiting the wake‑up handler race; there are currently no known public exploits. Administrators should treat the risk as moderate until a kernel update is applied.

Generated by OpenCVE AI on September 9, 2026 at 18:23 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to the latest stable release that incorporates the io_uring fix for deferring eventfd signalling.
  • Reboot the system or restart services that interact with io_uring to ensure the updated kernel is in use.
  • If upgrading the kernel immediately is not feasible, isolate vulnerable workloads and limit their use of io_uring by disabling the interface or using alternative I/O mechanisms.

Generated by OpenCVE AI on September 9, 2026 at 18:23 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 09 Sep 2026 18:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362

Wed, 09 Sep 2026 16:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: io_uring: defer eventfd signaling when queued from a wakeup handler io_req_local_work_add() signals the CQ ring eventfd inline when it is the one to push the first entry onto ->work_list. For DEFER_TASKRUN rings that add is frequently done from a waitqueue wakeup handler, where an arbitrary waitqueue lock is held. eventfd_signal_mask() only refuses to recurse when current->in_eventfd is set, but that bit is set by eventfd_signal_mask() itself. If the wake chain starts somewhere else, signal goes out inline and can feed back into epoll. Add IOU_F_TWQ_IN_WAKE, set it on the task_work add done from the three waitqueue callbacks, and use it to force io_eventfd_signal() down the existing call_rcu_hurry() deferral instead of signaling inline.
Title io_uring: defer eventfd signaling when queued from a wakeup handler
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-09-09T16:13:17.023Z

Reserved: 2026-08-26T14:34:25.801Z

Link: CVE-2026-80920

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-09T17:17:47.120

Modified: 2026-09-09T17:17:47.120

Link: CVE-2026-80920

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-09T18:30:13Z

Weaknesses
  • CWE-362

    Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')