diff options
Diffstat (limited to 'net/ipv4/fib_trie.c')
-rw-r--r-- | net/ipv4/fib_trie.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/net/ipv4/fib_trie.c b/net/ipv4/fib_trie.c index 15d32612e3c6..37c4bb89a708 100644 --- a/net/ipv4/fib_trie.c +++ b/net/ipv4/fib_trie.c | |||
@@ -1171,6 +1171,7 @@ int fib_table_insert(struct fib_table *tb, struct fib_config *cfg) | |||
1171 | new_fa->fa_state = state & ~FA_S_ACCESSED; | 1171 | new_fa->fa_state = state & ~FA_S_ACCESSED; |
1172 | new_fa->fa_slen = fa->fa_slen; | 1172 | new_fa->fa_slen = fa->fa_slen; |
1173 | new_fa->tb_id = tb->tb_id; | 1173 | new_fa->tb_id = tb->tb_id; |
1174 | new_fa->fa_default = -1; | ||
1174 | 1175 | ||
1175 | err = switchdev_fib_ipv4_add(key, plen, fi, | 1176 | err = switchdev_fib_ipv4_add(key, plen, fi, |
1176 | new_fa->fa_tos, | 1177 | new_fa->fa_tos, |
@@ -1222,6 +1223,7 @@ int fib_table_insert(struct fib_table *tb, struct fib_config *cfg) | |||
1222 | new_fa->fa_state = 0; | 1223 | new_fa->fa_state = 0; |
1223 | new_fa->fa_slen = slen; | 1224 | new_fa->fa_slen = slen; |
1224 | new_fa->tb_id = tb->tb_id; | 1225 | new_fa->tb_id = tb->tb_id; |
1226 | new_fa->fa_default = -1; | ||
1225 | 1227 | ||
1226 | /* (Optionally) offload fib entry to switch hardware. */ | 1228 | /* (Optionally) offload fib entry to switch hardware. */ |
1227 | err = switchdev_fib_ipv4_add(key, plen, fi, tos, cfg->fc_type, | 1229 | err = switchdev_fib_ipv4_add(key, plen, fi, tos, cfg->fc_type, |
@@ -1791,8 +1793,6 @@ void fib_table_flush_external(struct fib_table *tb) | |||
1791 | if (hlist_empty(&n->leaf)) { | 1793 | if (hlist_empty(&n->leaf)) { |
1792 | put_child_root(pn, n->key, NULL); | 1794 | put_child_root(pn, n->key, NULL); |
1793 | node_free(n); | 1795 | node_free(n); |
1794 | } else { | ||
1795 | leaf_pull_suffix(pn, n); | ||
1796 | } | 1796 | } |
1797 | } | 1797 | } |
1798 | } | 1798 | } |
@@ -1862,8 +1862,6 @@ int fib_table_flush(struct fib_table *tb) | |||
1862 | if (hlist_empty(&n->leaf)) { | 1862 | if (hlist_empty(&n->leaf)) { |
1863 | put_child_root(pn, n->key, NULL); | 1863 | put_child_root(pn, n->key, NULL); |
1864 | node_free(n); | 1864 | node_free(n); |
1865 | } else { | ||
1866 | leaf_pull_suffix(pn, n); | ||
1867 | } | 1865 | } |
1868 | } | 1866 | } |
1869 | 1867 | ||
@@ -1990,7 +1988,6 @@ struct fib_table *fib_trie_table(u32 id, struct fib_table *alias) | |||
1990 | return NULL; | 1988 | return NULL; |
1991 | 1989 | ||
1992 | tb->tb_id = id; | 1990 | tb->tb_id = id; |
1993 | tb->tb_default = -1; | ||
1994 | tb->tb_num_default = 0; | 1991 | tb->tb_num_default = 0; |
1995 | tb->tb_data = (alias ? alias->__data : tb->__data); | 1992 | tb->tb_data = (alias ? alias->__data : tb->__data); |
1996 | 1993 | ||