io_uring linked requests
io_uring linked requests are a chain of submission entries whose dependencies delay each successor until its predecessor completes.
IO_LINK is local to its chain and does not order unrelated requests. A chain must stay within a submission boundary. IO_HARDLINK retains a link across a completion error; it does not convert the failed operation into a successful one. [1]
Relations
- related
- io-uring, io-uring-cqe, io-uring-drain, persistence-ordering
Advantages
- Expresses dependencies without waiting in user space between every operation.
Limitations
- Ordering a chain does not make its side effects an atomic transaction.