Commit | Line | Data |
---|---|---|
0f212204 JA |
1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
2 | #ifndef _LINUX_IO_URING_H | |
3 | #define _LINUX_IO_URING_H | |
4 | ||
5 | #include <linux/sched.h> | |
6 | #include <linux/xarray.h> | |
a9216fac | 7 | #include <uapi/linux/io_uring.h> |
98447d65 | 8 | |
0f212204 | 9 | #if defined(CONFIG_IO_URING) |
f552a27a | 10 | void __io_uring_cancel(bool cancel_all); |
0f212204 | 11 | void __io_uring_free(struct task_struct *tsk); |
e7a6c00d | 12 | void io_uring_unreg_ringfd(void); |
33337d03 | 13 | const char *io_uring_get_opcode(u8 opcode); |
a4104821 | 14 | bool io_is_uring_fops(struct file *file); |
0f212204 | 15 | |
f552a27a | 16 | static inline void io_uring_files_cancel(void) |
0f212204 | 17 | { |
e7a6c00d JA |
18 | if (current->io_uring) { |
19 | io_uring_unreg_ringfd(); | |
f552a27a | 20 | __io_uring_cancel(false); |
e7a6c00d | 21 | } |
0f212204 | 22 | } |
3f48cf18 | 23 | static inline void io_uring_task_cancel(void) |
0f212204 | 24 | { |
a4aadd11 | 25 | if (current->io_uring) |
f552a27a | 26 | __io_uring_cancel(true); |
0f212204 JA |
27 | } |
28 | static inline void io_uring_free(struct task_struct *tsk) | |
29 | { | |
30 | if (tsk->io_uring) | |
31 | __io_uring_free(tsk); | |
32 | } | |
33 | #else | |
34 | static inline void io_uring_task_cancel(void) | |
35 | { | |
36 | } | |
f552a27a | 37 | static inline void io_uring_files_cancel(void) |
0f212204 JA |
38 | { |
39 | } | |
40 | static inline void io_uring_free(struct task_struct *tsk) | |
41 | { | |
42 | } | |
33337d03 DY |
43 | static inline const char *io_uring_get_opcode(u8 opcode) |
44 | { | |
45 | return ""; | |
46 | } | |
a4104821 JA |
47 | static inline bool io_is_uring_fops(struct file *file) |
48 | { | |
49 | return false; | |
50 | } | |
0f212204 JA |
51 | #endif |
52 | ||
53 | #endif |