You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your enhancement proposal related to a problem? Please describe.
Provide timeouts for RTIO, which would enable timeouts to be used across any RTIO capable device in a generic way.
Describe the solution you'd like
Using the same ideas io_uring has for linked timeouts is likely the best route. The idea being you setup a timeout operation that then links/chains into the operations you like to timeout on. The entire chain must complete before the timeout fires otherwise the remaining operations would be cancelled with -ETIMEOUT as an error code.
Describe alternatives you've considered
io_uring offers other timeout operations that track, for the rings setup, the total number of completions to timeout on. E.g. you submit N submissions, and have a timeout setup to wait for N completions with T time.
This is actually more complex than the linked timeout in my opinion, and doesn't necessarily match up as well with how we'd expect to program typical I/O operation chains and timeouts.
Additional context
Timeouts are widely useful and are a desired feature of Bus and Sensor I/O operations
Is your enhancement proposal related to a problem? Please describe.
Provide timeouts for RTIO, which would enable timeouts to be used across any RTIO capable device in a generic way.
Describe the solution you'd like
Using the same ideas io_uring has for linked timeouts is likely the best route. The idea being you setup a timeout operation that then links/chains into the operations you like to timeout on. The entire chain must complete before the timeout fires otherwise the remaining operations would be cancelled with -ETIMEOUT as an error code.
See IORING_OP_LINK_TIMEOUT with a prep function documented here https://man7.org/linux/man-pages/man3/io_uring_prep_link_timeout.3.html
Describe alternatives you've considered
io_uring offers other timeout operations that track, for the rings setup, the total number of completions to timeout on. E.g. you submit N submissions, and have a timeout setup to wait for N completions with T time.
This is actually more complex than the linked timeout in my opinion, and doesn't necessarily match up as well with how we'd expect to program typical I/O operation chains and timeouts.
Additional context
Timeouts are widely useful and are a desired feature of Bus and Sensor I/O operations
#27715 #33230 and many more
The text was updated successfully, but these errors were encountered: