MCPcopy Create free account
hub / github.com/axboe/liburing / setup_context

Function setup_context

examples/io_uring-udp.c:91–117  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

89}
90
91static int setup_context(struct ctx *ctx)
92{
93 struct io_uring_params params;
94 int ret;
95
96 memset(&params, 0, sizeof(params));
97 params.cq_entries = QD * 8;
98 params.flags = IORING_SETUP_SUBMIT_ALL | IORING_SETUP_COOP_TASKRUN |
99 IORING_SETUP_CQSIZE;
100
101 ret = io_uring_queue_init_params(QD, &ctx->ring, &params);
102 if (ret < 0) {
103 fprintf(stderr, "queue_init failed: %s\n"
104 "NB: This requires a kernel version >= 6.0\n",
105 strerror(-ret));
106 return ret;
107 }
108
109 ret = setup_buffer_pool(ctx);
110 if (ret)
111 io_uring_queue_exit(&ctx->ring);
112
113 memset(&ctx->msg, 0, sizeof(ctx->msg));
114 ctx->msg.msg_namelen = sizeof(struct sockaddr_storage);
115 ctx->msg.msg_controllen = CONTROLLEN;
116 return ret;
117}
118
119static int setup_sock(int af, int port)
120{

Callers 1

mainFunction · 0.70

Calls 3

setup_buffer_poolFunction · 0.85
io_uring_queue_exitFunction · 0.85

Tested by

no test coverage detected