summaryrefslogtreecommitdiffstats
path: root/io_uring/opdef.c
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2024-03-18 14:36:03 +0100
committerJens Axboe <axboe@kernel.dk>2024-04-15 16:10:25 +0200
commitc6f32c7d9e09bf1368447e9a29e869193ecbb756 (patch)
tree941e0c2eaa18d1b8f663d842659d07f00a5d6a49 /io_uring/opdef.c
parentio_uring/net: always set kmsg->msg.msg_control_user before issue (diff)
downloadlinux-c6f32c7d9e09bf1368447e9a29e869193ecbb756.tar.xz
linux-c6f32c7d9e09bf1368447e9a29e869193ecbb756.zip
io_uring/net: get rid of ->prep_async() for receive side
Move the io_async_msghdr out of the issue path and into prep handling, since it's now done unconditionally and hence does not need to be part of the issue path. This reduces the footprint of the multishot fast path of multiple invocations of ->issue() per prep, and also means that using ->prep_async() can be dropped for recvmsg asthis is now done via setup on the prep side. Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'io_uring/opdef.c')
-rw-r--r--io_uring/opdef.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/io_uring/opdef.c b/io_uring/opdef.c
index 77131826d603..1368193edc57 100644
--- a/io_uring/opdef.c
+++ b/io_uring/opdef.c
@@ -536,7 +536,6 @@ const struct io_cold_def io_cold_defs[] = {
.name = "RECVMSG",
#if defined(CONFIG_NET)
.async_size = sizeof(struct io_async_msghdr),
- .prep_async = io_recvmsg_prep_async,
.cleanup = io_sendmsg_recvmsg_cleanup,
.fail = io_sendrecv_fail,
#endif
@@ -613,7 +612,6 @@ const struct io_cold_def io_cold_defs[] = {
.async_size = sizeof(struct io_async_msghdr),
.cleanup = io_sendmsg_recvmsg_cleanup,
.fail = io_sendrecv_fail,
- .prep_async = io_sendrecv_prep_async,
#endif
},
[IORING_OP_OPENAT2] = {