Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\io_uring.c Create Date:2022-07-28 20:22:14
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:io_connect

Proto:static int io_connect(struct io_kiocb *req, struct io_kiocb **nxt, bool force_nonblock)

Type:int

Parameter:

TypeParameterName
struct io_kiocb *req
struct io_kiocb **nxt
boolforce_nonblock
2460  If io Then
2461  io = io
2462  Else
2463  ret = move_addr_to_kernel(addr, addr_len, & address)
2466  If ret Then Go to out
2468  io = __io
2471  file_flags = If force_nonblock Then O_NONBLOCK Else 0
2473  ret = __sys_connect_file(file, & address, addr_len, file_flags)
2475  If ( ret == -EAGAIN || ret == -EINPROGRESS ) && force_nonblock Then
2476  If io Then Return -EAGAIN
2478  If io_alloc_async_ctx(req) Then
2479  ret = -ENOMEM
2480  Go to out
2482  memcpy( & connect, & connect, size of connect )
2483  Return -EAGAIN
2485  If ret == -These should never be seen by user programs. To return one of ERESTART** codes, signal_pending() MUST be set. Note that ptrace can observe these* at syscall exit tracing, but they will never be left for the debugged user* process to see. Then ret = -EINTR
2487  out :
2488  If ret < 0 Then req_set_fail_links(req)
2490  io_cqring_add_event(req, ret)
2491  Drop reference to request, return next in chain (if there is one) if this* was the last reference to this request.
2492  Return 0
Caller
NameDescribe
io_issue_sqe