Skip to content
  • Jens Axboe's avatar
    io_uring: IORING_OP_TIMEOUT support · 5262f567
    Jens Axboe authored
    
    
    There's been a few requests for functionality similar to io_getevents()
    and epoll_wait(), where the user can specify a timeout for waiting on
    events. I deliberately did not add support for this through the system
    call initially to avoid overloading the args, but I can see that the use
    cases for this are valid.
    
    This adds support for IORING_OP_TIMEOUT. If a user wants to get woken
    when waiting for events, simply submit one of these timeout commands
    with your wait call (or before). This ensures that the application
    sleeping on the CQ ring waiting for events will get woken. The timeout
    command is passed in as a pointer to a struct timespec. Timeouts are
    relative. The timeout command also includes a way to auto-cancel after
    N events has passed.
    
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    5262f567