UDP/IPv6 refactoring
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v3 Latest10 patches 7 repliesIn review
- v211 patches 0 repliesSuperseded
- v111 patches 6 repliesSuperseded
Patches in v3 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/10 | ipv6: optimise ipcm6 cookie initinclude/ net/ net/ +3 more | +5 | 0 replies | |
| 2/10 | udp/ipv6: move pending section of udpv6_sendmsgnet/ | +42 | 2 replies | |
| 3/10 | udp/ipv6: prioritise the ip6 path over ip4 checksnet/ | +17 | 2 replies | |
| 4/10 | udp/ipv6: optimise udpv6_sendmsg() daddr checksnet/ | +11 | 0 replies | |
| 5/10 | udp/ipv6: optimise out daddr reassignmentnet/ | +0 | 0 replies | |
| 6/10 | udp/ipv6: clean up udpv6_sendmsg's saddr initnet/ | +4 | 0 replies | |
| 7/10 | ipv6: partially inline fl6_update_dst()include/ net/ | +18 | 0 replies | |
| 8/10 | ipv6: refactor opts push in __ip6_make_skb()net/ | +8 | 0 replies | |
| 9/10 | ipv6: improve opt-less __ip6_make_skb()net/ | +3 | 0 replies | |
| 10/10 | ipv6: clean up ip6_setup_corknet/ | +13 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v3 yet.
Cover letter [PATCH net-next v3 00/10] UDP/IPv6 refactoring
Refactor UDP/IPv6 and especially udpv6_sendmsg() paths. The end result looks cleaner than it was before and the series also removes a bunch of instructions and other overhead from the hot path positively affecting performance.
Testing over dummy netdev with 16 byte packets yields 2240481 tx/s, comparing to 2203417 tx/s previously, which is around +1.6%
v2: no code changes, just resending properly
v3: remove patch moving getfrag callback assignment
add benchmark numbers
Pavel Begunkov (10):
ipv6: optimise ipcm6 cookie init udp/ipv6: move pending section of udpv6_sendmsg udp/ipv6: prioritise the ip6 path over ip4 checks udp/ipv6: optimise udpv6_sendmsg() daddr checks udp/ipv6: optimise out daddr reassignment udp/ipv6: clean up udpv6_sendmsg's saddr init
ipv6: partially inline fl6_update_dst()
ipv6: refactor opts push in __ip6_make_skb()
ipv6: improve opt-less __ip6_make_skb()
ipv6: clean up ip6_setup_cork
include/net/ipv6.h | 24 +++---- net/ipv6/datagram.c | 4 +- net/ipv6/exthdrs.c | 15 ++--- net/ipv6/ip6_output.c | 53 +++++++-------- net/ipv6/raw.c | 8 +-- net/ipv6/udp.c | 153 ++++++++++++++++++++---------------------- net/l2tp/l2tp_ip6.c | 8 +-- 7 files changed, 120 insertions(+), 145 deletions(-)
Signature · 1 line
2.36.0