Merge branch 'net-introduce-and-use-route-hint'
authorDavid S. Miller <davem@davemloft.net>
Thu, 21 Nov 2019 22:45:55 +0000 (14:45 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 21 Nov 2019 22:46:31 +0000 (14:46 -0800)
commit7d75c0cb22b71837b376b68fa240c01d4a955fa4
treee034d97436dfa8b32deff124f3ab172648aef9e4
parent2c44713ed96da04f5e25b0df4035074b844def04
parent02b24941619fcce3d280311ac73b1e461552e9c8
Merge branch 'net-introduce-and-use-route-hint'

Paolo Abeni says:

====================
net: introduce and use route hint

This series leverages the listification infrastructure to avoid
unnecessary route lookup on ingress packets. In absence of custom rules,
packets with equal daddr will usually land on the same dst.

When processing packet bursts (lists) we can easily reference the previous
dst entry. When we hit the 'same destination' condition we can avoid the
route lookup, coping the already available dst.

Detailed performance numbers are available in the individual commit
messages.

v3 -> v4:
 - move helpers to their own patches (Eric D.)
 - enable hints for SUBTREE builds (David A.)
 - re-enable hints for ipv4 forward (David A.)

v2 -> v3:
 - use fib*_has_custom_rules() helpers (David A.)
 - add ip*_extract_route_hint() helper (Edward C.)
 - use prev skb as hint instead of copying data (Willem )

v1 -> v2:
 - fix build issue with !CONFIG_IP*_MULTIPLE_TABLES
 - fix potential race in ip6_list_rcv_finish()
====================

Acked-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>