Skip to main content
← All vulnerabilities
CVE-2026-81010

io_uring/waitid: honor task_work cancellation

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 6.18.52, 7.2.4
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: io_uring/waitid: honor task_work cancellation io_waitid_cb() may run through the fallback task_work path when task_work_add() can no longer queue work to the originating task. The fallback runs from a kworker and io_uring marks such task work as canceled through tw.cancel. io_waitid_cb() currently ignores tw.cancel and calls __do_wait(). waitid is task-context dependent: __do_wait() performs child lookup relative to current, and the retry path also uses current->signal->wait_chldexit. If the callback runs from the fallback kworker, current is therefore not the task that submitted the request. Honor tw.cancel before entering __do_wait(). Complete the request with -ECANCELED and skip the siginfo copy, since canceled task work may run without the submitting task's userspace execution context. Keep the existing siginfo handling for normal waitid completion and explicit cancellation.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From f31ecf671ddc498f20219453395794ff2383e06b · fixed in 0879697520abda2383ed7be40572ad583b5c4b02; From f31ecf671ddc498f20219453395794ff2383e06b · fixed in 7bc98e2de8c58a2bfaf0f540eb096a386ecfc96c; From f31ecf671ddc498f20219453395794ff2383e06b · fixed in 14572de82e5022899e5856008bc9cac97004a88c

  • Linux Linux

    6.7

  • KernelLinux

    From 6.7.0 · fixed in 6.18.52; From 6.19.0 · fixed in 7.2.4

References 3

git.kernel.org