From: David Ahern <dsah...@gmail.com> This series moves IPv4 pcpu cached routes from fib_nh to fib_nh_common to make the caches avaialable for IPv6 nexthops (fib6_nh) with IPv4 routes. This allows a fib6_nh struct to be used with both IPv4 and and IPv6 routes.
In addition pcpu caches and exception entries for IPv6 routes are moved from fib6_info to fib6_nh since they are really a function of the device and gateway. During the move of each, functions are refactored such that the core logic is in new helpers that take a fib6_nh versus a fib6_info. David Ahern (7): ipv4: Move cached routes to fib_nh_common ipv4: Pass fib_nh_common to rt_cache_route ipv4: Move exception bucket to nh_common ipv6: Move pcpu cached routes to fib6_nh ipv6: Refactor fib6_drop_pcpu_from ipv6: Refactor exception functions ipv6: Move exception bucket to fib6_nh include/net/ip6_fib.h | 11 +- include/net/ip_fib.h | 8 +- net/ipv4/fib_semantics.c | 45 +++---- net/ipv4/route.c | 78 ++++++------ net/ipv6/addrconf.c | 6 +- net/ipv6/ip6_fib.c | 62 ++++------ net/ipv6/route.c | 302 +++++++++++++++++++++++++++++++++-------------- 7 files changed, 306 insertions(+), 206 deletions(-) -- 2.11.0