summaryrefslogtreecommitdiff
path: root/io_uring/cancel.h
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2025-02-05 13:13:58 -0700
committerJens Axboe <axboe@kernel.dk>2025-02-17 05:34:45 -0700
commit8fa374f90b721ae5f56605ff67fc94a8b583e10c (patch)
treec62cf0df2bd2e1d271ff270927d98a0bacc4429b /io_uring/cancel.h
parent7d9944f5061e49cab5ee0e1c9507c2e8f94d41b8 (diff)
io_uring/cancel: add generic cancel helper
Any opcode that is cancelable ends up defining its own cancel helper for finding and canceling a specific request. Add a generic helper that can be used for this purpose. Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'io_uring/cancel.h')
-rw-r--r--io_uring/cancel.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/io_uring/cancel.h b/io_uring/cancel.h
index 80734a0a2b26..43e9bb74e9d1 100644
--- a/io_uring/cancel.h
+++ b/io_uring/cancel.h
@@ -28,6 +28,10 @@ bool io_cancel_remove_all(struct io_ring_ctx *ctx, struct io_uring_task *tctx,
struct hlist_head *list, bool cancel_all,
bool (*cancel)(struct io_kiocb *));
+int io_cancel_remove(struct io_ring_ctx *ctx, struct io_cancel_data *cd,
+ unsigned int issue_flags, struct hlist_head *list,
+ bool (*cancel)(struct io_kiocb *));
+
static inline bool io_cancel_match_sequence(struct io_kiocb *req, int sequence)
{
if (req->cancel_seq_set && sequence == req->work.cancel_seq)