Timeout update is a IORING_OP_TIMEOUT_REMOVE request with timeout_flags containing a new IORING_TIMEOUT_UPDATE flag. Even though naming may be confusing, but update and remove are very similar both code and functionality wise, so doesn't seem necessary to add a new opcode. Updates don't support offsets, but I don't see a need either. Can be implemented in the future by passing it in sqe->len. Pavel Begunkov (2): io_uring: restructure io_timeout_cancel() io_uring: add timeout update fs/io_uring.c | 90 +++++++++++++++++++++++++++-------- include/uapi/linux/io_uring.h | 1 + 2 files changed, 71 insertions(+), 20 deletions(-) -- 2.24.0