Io uring: Difference between revisions
Tags: Mobile edit Mobile web edit |
Tags: Mobile edit Mobile web edit |
||
| Line 245: | Line 245: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===Linked operations=== | |||
<tt>IOSQE_IO_LINK</tt> (since 5.3) or <tt>IOSQE_IO_HARDLINK</tt> (since 5.5) can be supplied in the <tt>flags</tt> field of an SQE to link with the next SQE. The chain can be arbitrarily long (though it cannot cross submission boundaries), terminating in the first linked SQE without this flag set. Multiple chains can execute in parallel on the kernel side. Unless <tt>HARDLINK</tt> is used, any error terminates a chain; any remaining linked SQEs will be immediately cancelled (short reads/writes are considered errors) with return code <tt>-ECANCELED</tt>. | <tt>IOSQE_IO_LINK</tt> (since 5.3) or <tt>IOSQE_IO_HARDLINK</tt> (since 5.5) can be supplied in the <tt>flags</tt> field of an SQE to link with the next SQE. The chain can be arbitrarily long (though it cannot cross submission boundaries), terminating in the first linked SQE without this flag set. Multiple chains can execute in parallel on the kernel side. Unless <tt>HARDLINK</tt> is used, any error terminates a chain; any remaining linked SQEs will be immediately cancelled (short reads/writes are considered errors) with return code <tt>-ECANCELED</tt>. | ||