[teamd]: Administratively shutdown port channel has member ports in deselected state and traffic is not forwarded. #1771 (#2882)
This commit is contained in:
parent
f791502237
commit
abc25df612
@ -0,0 +1,22 @@
|
||||
diff --git a/teamd/teamd_runner_lacp.c b/teamd/teamd_runner_lacp.c
|
||||
index 4a3fe6b..19592c5 100644
|
||||
--- a/teamd/teamd_runner_lacp.c
|
||||
+++ b/teamd/teamd_runner_lacp.c
|
||||
@@ -1182,12 +1182,17 @@ static int lacpdu_recv(struct lacp_port *lacp_port)
|
||||
struct lacpdu lacpdu;
|
||||
struct sockaddr_ll ll_from;
|
||||
int err;
|
||||
+ bool admin_state;
|
||||
|
||||
err = teamd_recvfrom(lacp_port->sock, &lacpdu, sizeof(lacpdu), 0,
|
||||
(struct sockaddr *) &ll_from, sizeof(ll_from));
|
||||
if (err <= 0)
|
||||
return err;
|
||||
|
||||
+ admin_state = team_get_ifinfo_admin_state(lacp_port->ctx->ifinfo);
|
||||
+ if (!admin_state)
|
||||
+ return 0;
|
||||
+
|
||||
return lacpdu_process(lacp_port, &lacpdu);
|
||||
}
|
||||
|
@ -7,3 +7,4 @@
|
||||
0010-teamd-lacp-update-port-state-according-to-partners-sy.patch
|
||||
0011-libteam-resynchronize-ifinfo-after-lost-RTNLGRP_LINK-.patch
|
||||
0012-teamd-do-not-process-lacpdu-before-the-port-ifinfo-i.patch
|
||||
0013-teamd-lacp-port-admin-down-recv-not-processing.patch
|
||||
|
Loading…
Reference in New Issue
Block a user