summaryrefslogtreecommitdiff
path: root/fs/fuse/dev_uring_i.h
diff options
context:
space:
mode:
authorBernd Schubert <bschubert@ddn.com>2025-01-20 02:29:07 +0100
committerMiklos Szeredi <mszeredi@redhat.com>2025-01-27 18:01:22 +0100
commit857b0263f30eebe13ab4b6a65156a0d6c8fc2210 (patch)
tree2e3dc8ceb5862a520a51fb0631df25923926c5be /fs/fuse/dev_uring_i.h
parentc2c9af9a0b13261c36909036057a116f2edb5e1a (diff)
downloadlinux-next-857b0263f30eebe13ab4b6a65156a0d6c8fc2210.tar.gz
linux-next-857b0263f30eebe13ab4b6a65156a0d6c8fc2210.zip
fuse: Allow to queue bg requests through io-uring
This prepares queueing and sending background requests through io-uring. Signed-off-by: Bernd Schubert <bschubert@ddn.com> Reviewed-by: Pavel Begunkov <asml.silence@gmail.com> # io_uring Reviewed-by: Luis Henriques <luis@igalia.com> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'fs/fuse/dev_uring_i.h')
-rw-r--r--fs/fuse/dev_uring_i.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/fs/fuse/dev_uring_i.h b/fs/fuse/dev_uring_i.h
index 0517a6eafc91..0182be61778b 100644
--- a/fs/fuse/dev_uring_i.h
+++ b/fs/fuse/dev_uring_i.h
@@ -82,8 +82,13 @@ struct fuse_ring_queue {
/* fuse requests waiting for an entry slot */
struct list_head fuse_req_queue;
+ /* background fuse requests */
+ struct list_head fuse_req_bg_queue;
+
struct fuse_pqueue fpq;
+ unsigned int active_background;
+
bool stopped;
};
@@ -127,6 +132,7 @@ void fuse_uring_stop_queues(struct fuse_ring *ring);
void fuse_uring_abort_end_requests(struct fuse_ring *ring);
int fuse_uring_cmd(struct io_uring_cmd *cmd, unsigned int issue_flags);
void fuse_uring_queue_fuse_req(struct fuse_iqueue *fiq, struct fuse_req *req);
+bool fuse_uring_queue_bq_req(struct fuse_req *req);
static inline void fuse_uring_abort(struct fuse_conn *fc)
{
@@ -179,6 +185,12 @@ static inline void fuse_uring_abort(struct fuse_conn *fc)
static inline void fuse_uring_wait_stopped_queues(struct fuse_conn *fc)
{
}
+
+static inline bool fuse_uring_ready(struct fuse_conn *fc)
+{
+ return false;
+}
+
#endif /* CONFIG_FUSE_IO_URING */
#endif /* _FS_FUSE_DEV_URING_I_H */