mbox series

[ipsec-next,v2,0/7] xfrm: remove three more indirect calls from packet path

Message ID 20200504080609.14648-1-fw@strlen.de
Headers show
Series xfrm: remove three more indirect calls from packet path | expand

Message

Florian Westphal May 4, 2020, 8:06 a.m. UTC
v2: rebase on top of ipsec-next, no other changes.

This patch series removes three more indirect calls from the state_afinfo
struct.

These are:
- extract_input (no dependencies on other modules)
- output_finish (same)
- extract_output (has dependency on ipv6 module, but
  that is only needed for pmtu detection, so the indirect
  call cost is not required for each packet).

Functions get moved to net/xfrm and the indirections are removed.
pmtu detection will be handled via ipv6_stubs.

Florian Westphal (7):
      xfrm: avoid extract_output indirection for ipv4
      xfrm: state: remove extract_input indirection from xfrm_state_afinfo
      xfrm: move xfrm4_extract_header to common helper
      xfrm: expose local_rxpmtu via ipv6_stubs
      xfrm: place xfrm6_local_dontfrag in xfrm.h
      xfrm: remove extract_output indirection from xfrm_state_afinfo
      xfrm: remove output_finish indirection from xfrm_state_afinfo

 include/net/ipv6_stubs.h |   1 +
 include/net/xfrm.h       |  26 ++++++----
 net/ipv4/xfrm4_input.c   |   5 --
 net/ipv4/xfrm4_output.c  |  63 +----------------------
 net/ipv4/xfrm4_state.c   |  24 ---------
 net/ipv6/af_inet6.c      |   1 +
 net/ipv6/xfrm6_input.c   |   5 --
 net/ipv6/xfrm6_output.c  |  98 ++---------------------------------
 net/ipv6/xfrm6_state.c   |  26 ----------
 net/xfrm/xfrm_inout.h    |  32 ++++++++++++
 net/xfrm/xfrm_input.c    |  21 ++++----
 net/xfrm/xfrm_output.c   | 129 ++++++++++++++++++++++++++++++++++++++++++++---
 12 files changed, 188 insertions(+), 243 deletions(-)