net: ipv6: use common fib_default_rule_pref
authorPhil Sutter <phil@nwl.cc>
Wed, 9 Sep 2015 12:20:56 +0000 (14:20 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 9 Sep 2015 21:19:50 +0000 (14:19 -0700)
commitf53de1e9a4aaf8cbe08845da6f7ff26a078ac507
tree2a0c2dc9c5a8030bb53e4b42fd7a3d67bf49a328
parent444c5f92ed152346aef0952316e0ea855129846c
net: ipv6: use common fib_default_rule_pref

This switches IPv6 policy routing to use the shared
fib_default_rule_pref() function of IPv4 and DECnet. It is also used in
multicast routing for IPv4 as well as IPv6.

The motivation for this patch is a complaint about iproute2 behaving
inconsistent between IPv4 and IPv6 when adding policy rules: Formerly,
IPv6 rules were assigned a fixed priority of 0x3FFF whereas for IPv4 the
assigned priority value was decreased with each rule added.

Since then all users of the default_pref field have been converted to
assign the generic function fib_default_rule_pref(), fib_nl_newrule()
may just use it directly instead. Therefore get rid of the function
pointer altogether and make fib_default_rule_pref() static, as it's not
used outside fib_rules.c anymore.

Signed-off-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/fib_rules.h
net/core/fib_rules.c
net/decnet/dn_rules.c
net/ipv4/fib_rules.c
net/ipv4/ipmr.c
net/ipv6/fib6_rules.c
net/ipv6/ip6mr.c