diff options
author | Pavel Begunkov <asml.silence@gmail.com> | 2022-01-27 00:36:29 +0000 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-01-27 19:46:11 -0800 |
commit | 5298953e742dc9211d3b724fb5394da8a1f3ed04 (patch) | |
tree | 94c45d64fd12ef2e4e08b913518733906aa8fcc8 /net/ipv6/ip6_output.c | |
parent | f37a4cc6bb0ba08c2d9fd7d18a1da87161cbb7f9 (diff) |
udp6: don't make extra copies of iflow
udpv6_sendmsg() first initialises an on-stack 88B struct flowi6 and then
copies it into cork, which is expensive. Avoid the copy in corkless case
by initialising on-stack cork->fl directly.
The main part is a couple of lines under !corkreq check. The rest
converts fl6 variable to be a pointer.
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/ipv6/ip6_output.c')
0 files changed, 0 insertions, 0 deletions