fib_trie: Minor cleanups to fib_table_flush_external
authorAlexander Duyck <alexander.h.duyck@redhat.com>
Fri, 6 Mar 2015 17:53:56 +0000 (09:53 -0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 6 Mar 2015 20:49:27 +0000 (15:49 -0500)
This change just does a couple of minor cleanups on
fib_table_flush_external.  Specifically it addresses the fact that resize
was being called even though nothing was being removed from the table, and
it drops an unecessary indent since we could just call continue on the
inverse of the fi && flag check.

Signed-off-by: Alexander Duyck <alexander.h.duyck@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/fib_trie.c

index 0131f369f5c969a39d93d63a22ab3220f97367dc..488cebc86631e8248f7b3db1df884b37131dedb7 100644 (file)
@@ -1586,13 +1586,8 @@ backtrace:
                        while (!(cindex--)) {
                                t_key pkey = pn->key;
 
-                               n = pn;
-                               pn = node_parent(n);
-
-                               /* resize completed node */
-                               resize(t, n);
-
                                /* if we got the root we are done */
+                               pn = node_parent(pn);
                                if (!pn)
                                        return;
 
@@ -1607,12 +1602,13 @@ backtrace:
        hlist_for_each_entry(fa, &n->leaf, fa_list) {
                struct fib_info *fi = fa->fa_info;
 
-               if (fi && (fi->fib_flags & RTNH_F_EXTERNAL)) {
-                       netdev_switch_fib_ipv4_del(n->key,
-                                                  KEYLENGTH - fa->fa_slen,
-                                                  fi, fa->fa_tos,
-                                                  fa->fa_type, tb->tb_id);
-               }
+               if (!fi || !(fi->fib_flags & RTNH_F_EXTERNAL))
+                       continue;
+
+               netdev_switch_fib_ipv4_del(n->key,
+                                          KEYLENGTH - fa->fa_slen,
+                                          fi, fa->fa_tos,
+                                          fa->fa_type, tb->tb_id);
        }
 
        /* if trie is leaf only loop is completed */