Commit | Line | Data |
---|---|---|
7aaff708 | 1 | // SPDX-License-Identifier: GPL-2.0 |
194bb58c JA |
2 | #ifndef IORING_CANCEL_H |
3 | #define IORING_CANCEL_H | |
7aaff708 | 4 | |
ad163a7e JA |
5 | #include <linux/io_uring_types.h> |
6 | ||
7 | struct io_cancel_data { | |
8 | struct io_ring_ctx *ctx; | |
9 | union { | |
10 | u64 data; | |
11 | struct file *file; | |
12 | }; | |
d7b8b079 | 13 | u8 opcode; |
ad163a7e JA |
14 | u32 flags; |
15 | int seq; | |
16 | }; | |
17 | ||
7aaff708 JA |
18 | int io_async_cancel_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe); |
19 | int io_async_cancel(struct io_kiocb *req, unsigned int issue_flags); | |
20 | ||
88f52eaa | 21 | int io_try_cancel(struct io_uring_task *tctx, struct io_cancel_data *cd, |
5d7943d9 | 22 | unsigned int issue_flags); |
e6f89be6 | 23 | void init_hash_table(struct io_hash_table *table, unsigned size); |
78a861b9 JA |
24 | |
25 | int io_sync_cancel(struct io_ring_ctx *ctx, void __user *arg); | |
aa5cd116 | 26 | bool io_cancel_req_match(struct io_kiocb *req, struct io_cancel_data *cd); |
194bb58c JA |
27 | |
28 | #endif |