net: Embed hh_cache inside of struct neighbour.
authorDavid S. Miller <davem@davemloft.net>
Thu, 14 Jul 2011 14:53:20 +0000 (07:53 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 14 Jul 2011 14:53:20 +0000 (07:53 -0700)
commitf6b72b6217f8c24f2a54988e58af858b4e66024d
treec59d5adcf9bb226db6f602c5078106052524cfea
parent390fd0b388e4f85549e5d60bdeb21364b344d9b9
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>
include/linux/netdevice.h
include/net/dst.h
include/net/neighbour.h
net/bridge/br_netfilter.c
net/core/dst.c
net/core/neighbour.c
net/ipv4/ip_output.c
net/ipv4/route.c
net/ipv6/ip6_output.c