Closed buracchi closed 2 months ago
Yep that can trigger, when the previous request has already completed, like in your case. I'll augment the man page.
When the previous request has already completed shouldn't it trigger a -ECANCELED
?
I've noticed this behavior happening even if the linked request is still pending. It seems related to "small" timeout values.
-ECANCELED would mean that it canceled the previous request. But yes, if the timeout is small, races are more likely to happen, that's just unavoidable, and then you may see either one.
When using
io_uring_prep_link_timeout
the resulting CQE may have theres
field set to-ENOENT
. This return value is not documented in theio_uring_prep_link_timeout(3)
man page and understanding what the error code is trying to convey is non-trivial.The following example
Produces the output:
Running on kernels