From: Jakub Kicinski Date: Mon, 22 Apr 2024 23:33:10 +0000 (-0700) Subject: Merge branch 'for-uring-ubufops' into HEAD X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=af046fd169d43ef0d5f8006954fa4b2fc90974af;p=linux.git Merge branch 'for-uring-ubufops' into HEAD Pavel Begunkov says: ==================== implement io_uring notification (ubuf_info) stacking (net part) To have per request buffer notifications each zerocopy io_uring send request allocates a new ubuf_info. However, as an skb can carry only one uarg, it may force the stack to create many small skbs hurting performance in many ways. The patchset implements notification, i.e. an io_uring's ubuf_info extension, stacking. It attempts to link ubuf_info's into a list, allowing to have multiple of them per skb. liburing/examples/send-zerocopy shows up 6 times performance improvement for TCP with 4KB bytes per send, and levels it with MSG_ZEROCOPY. Without the patchset it requires much larger sends to utilise all potential. bytes | before | after (Kqps) 1200 | 195 | 1023 4000 | 193 | 1386 8000 | 154 | 1058 ==================== Link: https://lore.kernel.org/all/cover.1713369317.git.asml.silence@gmail.com Signed-off-by: Jakub Kicinski --- af046fd169d43ef0d5f8006954fa4b2fc90974af