summaryrefslogtreecommitdiff
path: root/lib/if_rmap.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2023-03-29 15:27:09 -0400
committerDonald Sharp <sharpd@nvidia.com>2023-03-29 20:25:51 -0400
commit81322b96b0b1b31a89ce8e292814ed13c2cee9eb (patch)
treedb0a2c92f396ca34ab6df15ad8bbffaa93c92fba /lib/if_rmap.c
parent644a8d3560100cb56df34e5da7ad5d1072ad7106 (diff)
zebra: Ensure gr events run after Meta Queue has run
BGP signals to zebra that a afi has converged immediately after it has finished processing all routes for a given afi/safi. This generates events in zebra in this order a) Routes received from BGP, placed on early-rib Meta-Q b) Signal GR for the afi. Now imagine that zebra reads GR code and immediately processes routes that are in the actual rib and removes some routes. This generates a c) route deletion to the kernel for some number of routes that may be in the the early-rib Meta-Q d) Process the Meta-Q, and re-install the routes This is undesirable behavior in zebra. In that while we may end up in a correct state, there will be a blip for some number of routes that happen to be in the early rib Meta-Q. Modify the GR code to have it's own processing entry at the end of the Meta-Q. This will allow all routes to be processed and ready for handling by the Graceful Restart code. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'lib/if_rmap.c')
0 files changed, 0 insertions, 0 deletions