#ifndef INTERNAL_IO_SLIST_H
#define INTERNAL_IO_SLIST_H
#include <linux/io_uring_types.h>
#define __wq_list_for_each(pos, head) …
#define wq_list_for_each(pos, prv, head) …
#define wq_list_for_each_resume(pos, prv) …
#define wq_list_empty(list) …
#define INIT_WQ_LIST(list) …
static inline void wq_list_add_after(struct io_wq_work_node *node,
struct io_wq_work_node *pos,
struct io_wq_work_list *list)
{ … }
static inline void wq_list_add_tail(struct io_wq_work_node *node,
struct io_wq_work_list *list)
{ … }
static inline void wq_list_add_head(struct io_wq_work_node *node,
struct io_wq_work_list *list)
{ … }
static inline void wq_list_cut(struct io_wq_work_list *list,
struct io_wq_work_node *last,
struct io_wq_work_node *prev)
{ … }
static inline void __wq_list_splice(struct io_wq_work_list *list,
struct io_wq_work_node *to)
{ … }
static inline bool wq_list_splice(struct io_wq_work_list *list,
struct io_wq_work_node *to)
{ … }
static inline void wq_stack_add_head(struct io_wq_work_node *node,
struct io_wq_work_node *stack)
{ … }
static inline void wq_list_del(struct io_wq_work_list *list,
struct io_wq_work_node *node,
struct io_wq_work_node *prev)
{ … }
static inline
struct io_wq_work_node *wq_stack_extract(struct io_wq_work_node *stack)
{ … }
static inline struct io_wq_work *wq_next_work(struct io_wq_work *work)
{ … }
#endif