summaryrefslogtreecommitdiff
path: root/zebra/zebra_rib.c
diff options
context:
space:
mode:
authorDenis Ovsienko <linux@pilot.org.ua>2007-10-04 10:49:21 +0000
committerDenis Ovsienko <linux@pilot.org.ua>2007-10-04 10:49:21 +0000
commita3aaf5b0ceb8c5b3821793333b4057df872fbedd (patch)
treec4c95460aff0f7332f84546e9dd0d651abc8868a /zebra/zebra_rib.c
parentf304cb48f0d7d0ff8f36e7aca8293141a9fa9e60 (diff)
+ rib_process() speedup for multi-nexthop route nodes
Diffstat (limited to 'zebra/zebra_rib.c')
-rw-r--r--zebra/zebra_rib.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c
index 67dc810a..37b84a66 100644
--- a/zebra/zebra_rib.c
+++ b/zebra/zebra_rib.c
@@ -1118,9 +1118,10 @@ rib_process (struct work_queue *wq, void *data)
*/
for (nexthop = select->nexthop; nexthop; nexthop = nexthop->next)
+ if (CHECK_FLAG (nexthop->flags, NEXTHOP_FLAG_FIB))
{
- if (CHECK_FLAG (nexthop->flags, NEXTHOP_FLAG_FIB))
- installed = 1;
+ installed = 1;
+ break;
}
if (! installed)
rib_install_kernel (rn, select);