• Sources: LWN, discussion
  • Summary: The RFC pays for a worker thread only when an operation actually blocks, rather than up front, by exchanging thread identities at that point. A tmpfs fsync benchmark reported a gain of nearly 700 percent, while other gains are more modest and tests that always block show regressions, worst at higher queue depth because serialising submissions removes the parallelism that immediate worker handoff provided. The approach hooks the scheduler and depends on proving nothing else in the kernel holds a reference to the task_struct being exchanged, and it was posted 2026-09-17.
  • Why it matters: If the task_struct ownership question can be settled, io_uring stops paying worker-thread cost for operations that never block.
  • Follow-up: Watch for maintainer response on the scheduler hook and on task_struct reference safety, and whether this progresses past RFC.

send feedback on this story