Function report |
Source Code:fs\io_uring.c |
Create Date:2022-07-28 20:22:18 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:io_submit_sqes
Proto:static int io_submit_sqes(struct io_ring_ctx *ctx, unsigned int nr, struct file *ring_file, int ring_fd, struct mm_struct **mm, bool async)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct io_ring_ctx * | ctx | |
unsigned int | nr | |
struct file * | ring_file | |
int | ring_fd | |
struct mm_struct ** | mm | |
bool | async |
3782 | struct io_submit_state state, * statep = NULL |
3784 | submitted = 0 |
3785 | bool mm_fault = false |
3788 | If Not list_empty - tests whether a list is empty*@head: the list to test. && Not Returns true if there are no backlogged entries after the flush Then Return -EBUSY |
3792 | If nr > IO_PLUG_THRESHOLD Then |
3802 | req = io_get_req(ctx, statep) |
3803 | If Value for the false possibility is greater at compile time(!req) Then |
3809 | __io_free_req(req) |
3810 | Break |
3813 | If io_req_needs_user(req) && Not mm Then |
3814 | mm_fault = mm_fault || Not mmget_not_zero(sqo_mm) |
3815 | If Not mm_fault Then |
3821 | submitted++ |
3822 | sqe_flags = IOSQE_ flags |
3828 | needs_fixed_file = async |
3830 | If Not io_submit_sqe(req, sqe, statep, & link) Then Break |
3836 | If Not (sqe_flags & (links next sqe | like LINK, but stronger )) && link Then |
3837 | io_queue_link_head(link) |
3838 | link = NULL |
3842 | If link Then io_queue_link_head(link) |
3848 | io_commit_sqring(ctx) |
3850 | Return submitted |
Name | Describe |
---|---|
io_sq_thread | |
SYSCALL_DEFINE6 |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |