• David Ahern's avatar
    ipv6: Move pcpu cached routes to fib6_nh · f40b6ae2
    David Ahern authored
    rt6_info are specific instances of a fib entry and are tied to a
    device and gateway - ie., a nexthop. Before nexthop objects, IPv6 fib
    entries have separate fib6_info for each nexthop in a multipath route,
    so the location of the pcpu cache in the fib6_info struct worked.
    However, with nexthop objects a fib6_info can point to a set of nexthops
    (yet another alignment of ipv6 with ipv4). Accordingly, the pcpu
    cache needs to be moved to the fib6_nh struct so the cached entries
    are local to the nexthop specification used to create the rt6_info.
    
    Initialization and free of the pcpu entries moved to fib6_nh_init and
    fib6_nh_release.
    
    Change in location only, from fib6_info down to fib6_nh; no other
    functional change intended.
    Signed-off-by: default avatarDavid Ahern <dsahern@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    f40b6ae2
ip6_fib.h 13.2 KB