aboutsummaryrefslogtreecommitdiffstats
path: root/io_uring/io_uring.h
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2022-05-25 05:59:19 -0600
committerJens Axboe <axboe@kernel.dk>2022-07-24 18:39:11 -0600
commit99f15d8d61364299ae780cc739c74068a6d2538d (patch)
treef431621daeb42394ced16e6b784f1bc4f431d45d /io_uring/io_uring.h
parentcd40cae29ef815de6f7e72207b677c78f43f4688 (diff)
downloadlinux-99f15d8d61364299ae780cc739c74068a6d2538d.tar.gz
io_uring: move uring_cmd handling to its own file
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'io_uring/io_uring.h')
-rw-r--r--io_uring/io_uring.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/io_uring/io_uring.h b/io_uring/io_uring.h
index ebb225e850125..6a07e902120ab 100644
--- a/io_uring/io_uring.h
+++ b/io_uring/io_uring.h
@@ -25,6 +25,11 @@ static inline void io_req_set_res(struct io_kiocb *req, s32 res, u32 cflags)
req->cqe.flags = cflags;
}
+static inline bool req_has_async_data(struct io_kiocb *req)
+{
+ return req->flags & REQ_F_ASYNC_DATA;
+}
+
static inline void io_put_file(struct file *file)
{
if (file)
@@ -53,6 +58,8 @@ static inline void io_ring_submit_lock(struct io_ring_ctx *ctx,
lockdep_assert_held(&ctx->uring_lock);
}
+void __io_req_complete(struct io_kiocb *req, unsigned issue_flags);
+
struct file *io_file_get_normal(struct io_kiocb *req, int fd);
struct file *io_file_get_fixed(struct io_kiocb *req, int fd,
unsigned issue_flags);
@@ -65,5 +72,7 @@ int io_queue_rsrc_removal(struct io_rsrc_data *data, unsigned idx,
void io_rsrc_node_switch(struct io_ring_ctx *ctx,
struct io_rsrc_data *data_to_kill);
bool io_is_uring_fops(struct file *file);
+bool io_alloc_async_data(struct io_kiocb *req);
+void io_req_task_work_add(struct io_kiocb *req);
#endif