Skip to content
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

isisd: fix update link params after circuit is up (backport #16667) #16729

Merged
merged 1 commit into from
Sep 3, 2024

Conversation

mergify[bot]
Copy link

@mergify mergify bot commented Sep 3, 2024

If the link-params are set when the circuit not yet up, the link-params are never updated.

isis_link_params_update() is called from isis_circuit_up() but returns immediately because circuit->state != C_STATE_UP. circuit->state is updated in isis_csm_state_change after isis_circuit_up().

struct isis_circuit *isis_csm_state_change(enum isis_circuit_event event,
struct isis_circuit *circuit,
void *arg)
{
[...]
if (isis_circuit_up(circuit) != ISIS_OK) {
isis_circuit_deconfigure(circuit, area);
break;
}
circuit->state = C_STATE_UP;
isis_event_circuit_state_change(circuit, circuit->area,
1);

Do not return isis_link_params_update() if circuit->state != C_STATE_UP.

Fixes: 0fdd8b2 ("isisd: update link params after circuit is up")


This is an automatic backport of pull request #16667 done by Mergify.

If the link-params are set when the circuit not yet up, the link-params
are never updated.

isis_link_params_update() is called from isis_circuit_up() but returns
immediately because circuit->state != C_STATE_UP. circuit->state is
updated in isis_csm_state_change after isis_circuit_up().

> struct isis_circuit *isis_csm_state_change(enum isis_circuit_event event,
> 					   struct isis_circuit *circuit,
> 					   void *arg)
> {
> [...]
> 			if (isis_circuit_up(circuit) != ISIS_OK) {
> 				isis_circuit_deconfigure(circuit, area);
> 				break;
> 			}
> 			circuit->state = C_STATE_UP;
> 			isis_event_circuit_state_change(circuit, circuit->area,
> 							1);

Do not return isis_link_params_update() if circuit->state != C_STATE_UP.

Fixes: 0fdd8b2 ("isisd: update link params after circuit is up")
Signed-off-by: Louis Scalbert <[email protected]>
(cherry picked from commit 6ce6b7a)
@donaldsharp donaldsharp merged commit c5d3363 into stable/10.0 Sep 3, 2024
13 of 14 checks passed
@mergify mergify bot deleted the mergify/bp/stable/10.0/pr-16667 branch September 3, 2024 20:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants