-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
zebra: On startup actually allow for nhe's to be early #16960
Conversation
I hate this one. Thinking about it some more |
87cd8a0
to
9ddd39d
Compare
I rewrote the whole approach. I like this better |
9ddd39d
to
bbf6307
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just had one question...
bbf6307
to
d40a014
Compare
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
d40a014
to
54511bd
Compare
54511bd
to
d032ecb
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good
zebra/rib.h
Outdated
@@ -637,6 +637,7 @@ extern uint32_t rt_table_main_id; | |||
void route_entry_dump_nh(const struct route_entry *re, const char *straddr, | |||
const struct vrf *re_vrf, | |||
const struct nexthop *nexthop); | |||
extern void zebra_main_router_started(void); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hmm - header file - maybe this should be in zebra_router.h? that's a little more general-purpose
zebra/main.c
Outdated
void zebra_main_router_started(void) | ||
{ | ||
/* After we have successfully acquired the pidfile, we can be sure | ||
* about being the only copy of zebra process, which is submitting |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this copied-over comment is a little confusing, now that we're not in the context of main() ?
it'd be clearer if it aligned with the comment around the caller - that this is being called once zebra has requested a bunch of data from the OS or dataplane?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed as per slack conversation
d032ecb
to
4b66a36
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thanks
Currently zebra starts the graceful restart timer as well as allows connections from clients before all data is read in from the kernel as well as the possiblity of allowing client connections before this happens as well. Let's move the graceful restart timer start till after this is done as well as not allowing client connections till then as well. Signed-off-by: Donald Sharp <[email protected]>
4b66a36
to
9e74dda
Compare
Recent commits have moved zebra's nexthop group cache entries to be figured out after the dplane has started up. As such this leaves us with a situation where the cache entries startup time can be/is greater than the startup time for the purposes of graceful restart. Just notice that we are in startup mode and do the right thing.