aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/net/ipv4/fib_rules.c
diff options
context:
space:
mode:
authorScott Feldman <sfeldma@gmail.com>2015-03-05 21:21:16 -0800
committerDavid S. Miller <davem@davemloft.net>2015-03-06 00:24:58 -0500
commit104616e74e0b464d449fdd2ee2f547d2fad71610 (patch)
treed4b32f6edd854bf4188abcea58ec84616a466df4 /net/ipv4/fib_rules.c
parentswitchdev: add IPv4 fib ndo ops wrappers (diff)
downloadwireguard-linux-104616e74e0b464d449fdd2ee2f547d2fad71610.tar.xz
wireguard-linux-104616e74e0b464d449fdd2ee2f547d2fad71610.zip
switchdev: don't support custom ip rules, for now
Keep switchdev FIB offload model simple for now and don't allow custom ip rules. Signed-off-by: Scott Feldman <sfeldma@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/fib_rules.c')
-rw-r--r--net/ipv4/fib_rules.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/ipv4/fib_rules.c b/net/ipv4/fib_rules.c
index d3db718be51d..190d0d00d744 100644
--- a/net/ipv4/fib_rules.c
+++ b/net/ipv4/fib_rules.c
@@ -209,6 +209,8 @@ static int fib4_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
rule4->tos = frh->tos;
net->ipv4.fib_has_custom_rules = true;
+ fib_flush_external(rule->fr_net);
+
err = 0;
errout:
return err;
@@ -224,6 +226,7 @@ static void fib4_rule_delete(struct fib_rule *rule)
net->ipv4.fib_num_tclassid_users--;
#endif
net->ipv4.fib_has_custom_rules = true;
+ fib_flush_external(rule->fr_net);
}
static int fib4_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,