]> git.proxmox.com Git - mirror_frr.git/commit
bgpd: Optimizing route-map's processing of dependencies.
authorNaveen Thanikachalam <nthanikachal@vmware.com>
Sun, 11 Aug 2019 11:24:15 +0000 (04:24 -0700)
committerNaveen Thanikachalam <nthanikachal@vmware.com>
Mon, 12 Aug 2019 07:51:46 +0000 (00:51 -0700)
commit47c8fa1f875ed1c8e2907c9ffe9c25ab69436ca1
tree397a4c73530d68850de0da36a0a8eaa89e2f5e57
parentab0ef7a3920131edf680a866b21bd6e03fd92041
bgpd: Optimizing route-map's processing of dependencies.

Say for eg., 256 prefix-list entries are pasted to VTYSH.
This results in BGP processing the events for several minutes.

BGPD starts a timer for 5 seconds when the first dependency configuraion
is received. On timer expiry, BGP process dependent route-maps.
After this processing, BGPD reads the configurations received in the
next 5 seconds and then re-processes the route-maps from the beginning.
This cyclic re-processing consumes time and CPU cycles.

Instead of starting a timer when the first configuration is received,
everytime a configuration is received, the existing timer is reset.
This would mean that all the configurations are read first before the timer
expires. This eliminates the cyclic re-processing.

Signed-off-by: NaveenThanikachalam nthanikachal@vmware.com
bgpd/bgp_routemap.c