mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-03 22:19:21 +00:00
zebra: Only install a minimal amount of times
The code was installing the nexthop group again using the NLM_F_REPLACE function causing extremely large route installation times. This reduces the time from installing 1 million routes from sharpd with a nhg from > 200 seconds ( where I gave up ) to ~15 seconds on my machine for 32 x ecmp. As a side note 1 million routes using master sharpd takes ~50 seconds to do the same thing. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
cc6a0d7d80
commit
e3b9c0f2f6
@ -2553,8 +2553,7 @@ void zebra_nhg_install_kernel(struct nhg_hash_entry *nhe)
|
||||
}
|
||||
|
||||
if (CHECK_FLAG(nhe->flags, NEXTHOP_GROUP_VALID)
|
||||
&& (!CHECK_FLAG(nhe->flags, NEXTHOP_GROUP_INSTALLED)
|
||||
|| nhe->id >= ZEBRA_NHG_PROTO_LOWER)
|
||||
&& !CHECK_FLAG(nhe->flags, NEXTHOP_GROUP_INSTALLED)
|
||||
&& !CHECK_FLAG(nhe->flags, NEXTHOP_GROUP_QUEUED)) {
|
||||
/* Change its type to us since we are installing it */
|
||||
if (!ZEBRA_NHG_CREATED(nhe))
|
||||
|
Loading…
Reference in New Issue
Block a user