]> git.baikalelectronics.ru Git - kernel.git/commit
net: Abstract away all dst_entry metrics accesses.
authorDavid S. Miller <davem@davemloft.net>
Thu, 9 Dec 2010 05:16:57 +0000 (21:16 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Dec 2010 18:46:36 +0000 (10:46 -0800)
commit9b913f0414f85038a7a27005c17dd55695788b4e
tree2f44985e44aef53a0d99991b9f5c2f0eb6dbf4ad
parent3e1225501436068d3d4c30bafd8d3ca2886f707f
net: Abstract away all dst_entry metrics accesses.

Use helper functions to hide all direct accesses, especially writes,
to dst_entry metrics values.

This will allow us to:

1) More easily change how the metrics are stored.

2) Implement COW for metrics.

In particular this will help us put metrics into the inetpeer
cache if that is what we end up doing.  We can make the _metrics
member a pointer instead of an array, initially have it point
at the read-only metrics in the FIB, and then on the first set
grab an inetpeer entry and point the _metrics member there.

Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
include/net/dst.h
net/bridge/br_device.c
net/bridge/br_netfilter.c
net/decnet/dn_route.c
net/ipv4/ip_gre.c
net/ipv4/route.c
net/ipv4/tcp_input.c
net/ipv6/ndisc.c
net/ipv6/route.c
net/xfrm/xfrm_policy.c