io_submit_stateRegular
4.4: Absent ⚠️
4.8: Absent ⚠️
4.10: Absent ⚠️
4.13: Absent ⚠️
4.15: Absent ⚠️
4.18: Absent ⚠️
5.0: Absent ⚠️
5.3: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
5.4: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
5.8: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
5.11: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
bool plug_started;
struct io_comp_state comp;
struct file *file;
unsigned int fd;
unsigned int file_refs;
unsigned int ios_left;
};
5.13: ✅struct io_submit_state {
struct blk_plug plug;
struct io_submit_link link;
void * reqs[32];
unsigned int free_reqs;
bool plug_started;
struct io_comp_state comp;
struct file *file;
unsigned int fd;
unsigned int file_refs;
unsigned int ios_left;
};
5.15: ✅struct io_submit_state {
struct blk_plug plug;
struct io_submit_link link;
void * reqs[32];
unsigned int free_reqs;
bool plug_started;
struct io_kiocb * compl_reqs[32];
unsigned int compl_nr;
struct list_head free_list;
unsigned int ios_left;
};
5.19: ✅struct io_submit_state {
struct io_wq_work_node free_list;
struct io_wq_work_list compl_reqs;
struct io_submit_link link;
bool plug_started;
bool need_plug;
bool flush_cqes;
short unsigned int submit_nr;
struct blk_plug plug;
};
6.2: ✅struct io_submit_state {
struct io_wq_work_node free_list;
struct io_wq_work_list compl_reqs;
struct io_submit_link link;
bool plug_started;
bool need_plug;
short unsigned int submit_nr;
unsigned int cqes_count;
struct blk_plug plug;
struct io_uring_cqe cqes[16];
};
6.5: ✅struct io_submit_state {
struct io_wq_work_node free_list;
struct io_wq_work_list compl_reqs;
struct io_submit_link link;
bool plug_started;
bool need_plug;
short unsigned int submit_nr;
unsigned int cqes_count;
struct blk_plug plug;
struct io_uring_cqe cqes[16];
};
6.8: ✅struct io_submit_state {
struct io_wq_work_node free_list;
struct io_wq_work_list compl_reqs;
struct io_submit_link link;
bool plug_started;
bool need_plug;
short unsigned int submit_nr;
unsigned int cqes_count;
struct blk_plug plug;
};
arm64: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
armhf: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
ppc64el: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
riscv64: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
aws: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
azure: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
gcp: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
lowlatency: ✅struct io_submit_state {
struct blk_plug plug;
void * reqs[8];
unsigned int free_reqs;
unsigned int cur_req;
struct file *file;
unsigned int fd;
unsigned int has_refs;
unsigned int used_refs;
unsigned int ios_left;
};
Regular
5.3 and 5.4 ✅
5.4 and 5.8 ⚠️unsigned int cur_req
5.8 and 5.11 ⚠️bool plug_started
struct io_comp_state comp
unsigned int file_refs
unsigned int has_refs
unsigned int used_refs
5.11 and 5.13 ⚠️struct io_submit_link link
void * reqs[8] ➡️ void * reqs[32]
5.13 and 5.15 ⚠️struct io_kiocb * compl_reqs[32]
unsigned int compl_nr
struct list_head free_list
struct io_comp_state comp
struct file *file
unsigned int fd
unsigned int file_refs
5.15 and 5.19 ⚠️bool need_plug
bool flush_cqes
short unsigned int submit_nr
void * reqs[32]
unsigned int free_reqs
unsigned int compl_nr
unsigned int ios_left
struct io_kiocb * compl_reqs[32] ➡️ struct io_wq_work_list compl_reqs
struct list_head free_list ➡️ struct io_wq_work_node free_list
5.19 and 6.2 ⚠️unsigned int cqes_count
struct io_uring_cqe cqes[16]
bool flush_cqes
6.2 and 6.5 ✅
6.5 and 6.8 ⚠️struct io_uring_cqe cqes[16]
amd64 and arm64 ✅
amd64 and armhf ✅
amd64 and ppc64el ✅
amd64 and riscv64 ✅
generic and aws ✅
generic and azure ✅
generic and gcp ✅
generic and lowlatency ✅