Skip to content
CVE PROGRAM SOURCE RECORD7.8 High

CVE-2024-56709

io_uring: check if iowq is killed before queuing

Description

In the Linux kernel, the following vulnerability has been resolved: io_uring: check if iowq is killed before queuing task work can be executed after the task has gone through io_uring termination, whether it's the final task_work run or the fallback path. In this case, task work will find ->io_wq being already killed and null'ed, which is a problem if it then tries to forward the request to io_queue_iowq(). Make io_queue_iowq() fail requests in this case. Note that it also checks PF_KTHREAD, because the user can first close a DEFER_TASKRUN ring and shortly after kill the task, in which case ->iowq check would race.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 773af69121ecc6c53d192661af8d53bb3db028ae to < 534d59ab38010aada88390db65985e65d0de7d9eaffected
  • 773af69121ecc6c53d192661af8d53bb3db028ae to < 2ca94c8de36091067b9ce7527ae8db3812d38781affected
  • 773af69121ecc6c53d192661af8d53bb3db028ae to < 4f95a2186b7f2af09331e1e8069bcaf34fe019cfaffected
  • 773af69121ecc6c53d192661af8d53bb3db028ae to < dbd2ca9367eb19bc5e269b8c58b0b1514ada9156affected

Linux Linux

Default version status: affected

  • 5.14affected
  • 0 to < 5.14unaffected
  • 6.1.122 to ≤ 6.1.*unaffected
  • 6.6.68 to ≤ 6.6.*unaffected
  • 6.12.7 to ≤ 6.12.*unaffected
  • 6.13 to ≤ *unaffected

References