summaryrefslogtreecommitdiffstats
path: root/net/ipv4/fib_trie.c
diff options
context:
space:
mode:
authorJulian Anastasov <ja@ssi.bg>2011-03-26 04:33:23 +0100
committerDavid S. Miller <davem@davemloft.net>2011-03-26 04:33:23 +0100
commit1fbc78439291627642517f15b9b91f3125588143 (patch)
treebde47a81d7d45f9b7027b51b339c966ba87136a5 /net/ipv4/fib_trie.c
parentroute: Take the right src and dst addresses in ip_route_newports (diff)
downloadlinux-1fbc78439291627642517f15b9b91f3125588143.tar.xz
linux-1fbc78439291627642517f15b9b91f3125588143.zip
ipv4: do not ignore route errors
The "ipv4: Inline fib_semantic_match into check_leaf" change forgets to return the route errors. check_leaf should return the same results as fib_table_lookup. Signed-off-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/fib_trie.c')
-rw-r--r--net/ipv4/fib_trie.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv4/fib_trie.c b/net/ipv4/fib_trie.c
index 90a3ff605591..b92c86f6e9b3 100644
--- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c
@@ -1365,9 +1365,9 @@ static int check_leaf(struct fib_table *tb, struct trie *t, struct leaf *l,
err = fib_props[fa->fa_type].error;
if (err) {
#ifdef CONFIG_IP_FIB_TRIE_STATS
- t->stats.semantic_match_miss++;
+ t->stats.semantic_match_passed++;
#endif
- return 1;
+ return err;
}
if (fi->fib_flags & RTNH_F_DEAD)
continue;