io_uring/net: add IORING_SEND_IGNORE_INLINE support to zerocopy send io_uring-ignore-inline
authorJens Axboe <axboe@kernel.dk>
Mon, 14 Oct 2024 20:16:31 +0000 (14:16 -0600)
committerJens Axboe <axboe@kernel.dk>
Tue, 15 Oct 2024 13:41:20 +0000 (07:41 -0600)
commit0c4420daacc596ad3bc123f3f2c1b640faf5d3ac
tree6c30b95c5b0cdd6ef19407a4997891472c552bcf
parentee384ea5a6f2e81a047ff940eca0b59137351f29
io_uring/net: add IORING_SEND_IGNORE_INLINE support to zerocopy send

If IORING_SEND_IGNORE_INLINE is set for a send zerocopy request, then a
successful inline completion of such a request will be ignored for a
submit_and_wait() type of submissions. In other words, if an application
submits a send for socketA with a recv for socketB, it can now do:

io_uring_submit_and_wait(ring, 1);

and have the inline send completion be ignored from the number of items
to wait for. Note that this only applies to the direct zerocopy send
completion, it does not include the notification when it's safe to reuse
the buffer. Those happen out-of-line anyway.

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