net: Embed hh_cache inside of struct neighbour.
Now that there is a one-to-one correspondance between neighbour
and hh_cache entries, we no longer need:
1) dynamic allocation
2) attachment to dst->hh
3) refcounting
Initialization of the hh_cache entry is indicated by hh_len
being non-zero, and such initialization is always done with
the neighbour's lock held as a writer.
Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- include/linux/netdevice.h 1 addition, 14 deletionsinclude/linux/netdevice.h
- include/net/dst.h 9 additions, 9 deletionsinclude/net/dst.h
- include/net/neighbour.h 1 addition, 1 deletioninclude/net/neighbour.h
- net/bridge/br_netfilter.c 4 additions, 2 deletionsnet/bridge/br_netfilter.c
- net/core/dst.c 0 additions, 7 deletionsnet/core/dst.c
- net/core/neighbour.c 22 additions, 59 deletionsnet/core/neighbour.c
- net/ipv4/ip_output.c 9 additions, 5 deletionsnet/ipv4/ip_output.c
- net/ipv4/route.c 4 additions, 3 deletionsnet/ipv4/route.c
- net/ipv6/ip6_output.c 9 additions, 5 deletionsnet/ipv6/ip6_output.c
Loading
Please register or sign in to comment