io_uring: add netmsg cache
authorJens Axboe <axboe@kernel.dk>
Thu, 7 Jul 2022 20:30:09 +0000 (14:30 -0600)
committerJens Axboe <axboe@kernel.dk>
Mon, 25 Jul 2022 00:39:17 +0000 (18:39 -0600)
commit43e0bbbd0b0e30d232fd8e9e908125b5c49a9fbc
tree36990dc646e88f2bc176bb4873fa783b09ac9c69
parent9731bc9855dc169f27433fef3c4d0ff3496c512d
io_uring: add netmsg cache

For recvmsg/sendmsg, if they don't complete inline, we currently need
to allocate a struct io_async_msghdr for each request. This is a
somewhat large struct.

Hook up sendmsg/recvmsg to use the io_alloc_cache. This reduces the
alloc + free overhead considerably, yielding 4-5% of extra performance
running netbench.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
include/linux/io_uring_types.h
io_uring/io_uring.c
io_uring/net.c
io_uring/net.h