David Ahern 138118ec96 net/ipv6: Add fib6_lookup
Add IPv6 equivalent to fib_lookup. Does a fib lookup, including rules,
but returns a FIB entry, fib6_info, rather than a dst based rt6_info.
fib6_lookup is any where from 140% (MULTIPLE_TABLES config disabled)
to 60% faster than any of the dst based lookup methods (without custom
rules) and 25% faster with custom rules (e.g., l3mdev rule).

Since the lookup function has a completely different signature,
fib6_rule_action is split into 2 paths: the existing one is
renamed __fib6_rule_action and a new one for the fib6_info path
is added. fib6_rule_action decides which to call based on the
lookup_ptr. If it is fib6_table_lookup then the new path is taken.

Caller must hold rcu lock as no reference is taken on the returned
fib entry.

Signed-off-by: David Ahern <dsahern@gmail.com>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2018-05-11 00:10:56 +02:00
..
2018-03-27 13:18:09 -04:00
2018-03-27 13:18:09 -04:00
2018-04-19 15:40:13 -04:00
2018-05-11 00:10:56 +02:00
2017-05-21 13:42:36 -04:00
2018-03-27 13:18:09 -04:00
2018-05-11 00:10:56 +02:00
2018-05-07 23:50:27 -04:00
2018-04-26 15:07:42 -04:00
2018-05-01 09:38:41 +02:00
2018-04-23 10:21:24 -04:00
2018-02-28 11:43:28 -05:00
2018-03-27 13:18:09 -04:00
2016-12-25 17:21:23 +01:00
2018-03-27 13:18:09 -04:00
2017-09-01 18:35:23 -07:00
2018-03-27 13:18:09 -04:00
2015-11-03 10:52:13 -05:00
2018-04-26 15:07:42 -04:00
2018-05-01 14:20:14 -04:00
2018-03-27 13:18:09 -04:00