Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Layer 0 spec — io_uring module (redirection)

Redirection document — Version 2.0

This document is no longer authoritative. It was the early-stage synthesis of the io_uring module, calibrated on an old kernel. Its inventory and partitioning function has been entirely revised and corrected by the master document and the detailed per-Temps specifications (frozen kernel target 6.12 LTS).

It is kept as a redirection point so as not to break inbound links; all of its substantive content now lives in the documents below.

Where to read the io_uring module specification

Architecture decisions

Master document (entry point)

Detailed specifications per Temps

Historical note — soft/hard link semantics (corrected — ref. spec 3c §2). An earlier version of this document described the soft/hard link semantics backwards and gave an incomplete inventory (calibrated on ~5.15). The correct semantics, kernel-verified and authoritative in io-uring-3c-linked.md §2, are:

  • soft (IOSQE_IO_LINK): the chain is broken on a completion error of a link — short read included (a partial read counts as a chaining error) → the following links receive -ECANCELED;
  • hard (IOSQE_IO_HARDLINK): the chain is not broken by a completion error of a link (the following ones execute anyway);
  • in both cases, the execution order of the links is guaranteed;
  • a submission failure of the parent link breaks the chain.

In case of divergence, the master document and the per-Temps specs are authoritative.


Document license: MPL 2.0 Status: Redirection document. The normative content lives in the master document and the per-Temps specs.