diff options
author | Stephen Hemminger <shemminger@vyatta.com> | 2013-01-04 22:29:20 +0000 |
---|---|---|
committer | David Lamparter <equinox@opensourcerouting.org> | 2013-01-15 17:49:41 +0100 |
commit | 07ff4dc4d29f6f8db77e0e73da5d59e864ae2e66 (patch) | |
tree | b631ce8f75ae8e932eac212d454dd8c27fe6b4d7 /bgpd | |
parent | 1e0ce7caa622f07c20bb74414a4a5b4cbd732c75 (diff) |
bgpd: mark route nodes scheduled into work queue
The flag bit BGP_NODE_PROCESS_SCHEDULED is checked but never set.
This causes route node to be scheduled multiple times under load.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'bgpd')
-rw-r--r-- | bgpd/bgp_route.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 6155bc16..06bd5991 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -1695,6 +1695,7 @@ bgp_process (struct bgp *bgp, struct bgp_node *rn, afi_t afi, safi_t safi) break; } + SET_FLAG (rn->flags, BGP_NODE_PROCESS_SCHEDULED); return; } |