commit beb831fdc19195aecb365c4b48b6d8451c59251c caused member ports state to be changed to CURRENT when master team device is brought UP. This is not correct as the partner may still be DOWN. Set it to EXPIRIED and let the state go CURRENT after receiving a LACPDU from the partner.
Signed-off-by: Sridhar Samudrala sridhar.samudrala@intel.com --- teamd/teamd_runner_lacp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/teamd/teamd_runner_lacp.c b/teamd/teamd_runner_lacp.c index 1cfef36..1af3b17 100644 --- a/teamd/teamd_runner_lacp.c +++ b/teamd/teamd_runner_lacp.c @@ -1314,12 +1314,13 @@ static int lacp_event_watch_admin_state_changed(struct teamd_context *ctx, bool admin_state; int err;
+ admin_state = team_get_ifinfo_admin_state(ctx->ifinfo); + teamd_for_each_tdport(tdport, ctx) { struct lacp_port *lacp_port = lacp_port_get(lacp, tdport);
- admin_state = team_get_ifinfo_admin_state(ctx->ifinfo); err = lacp_port_set_state(lacp_port, - admin_state?PORT_STATE_CURRENT:PORT_STATE_DISABLED); + admin_state?PORT_STATE_EXPIRED:PORT_STATE_DISABLED); if (err) return err; }
Mon, Oct 12, 2015 at 08:39:09PM CEST, sridhar.samudrala@intel.com wrote:
commit beb831fdc19195aecb365c4b48b6d8451c59251c caused member ports state to be changed to CURRENT when master team device is brought UP. This is not correct as the partner may still be DOWN. Set it to EXPIRIED and let the state go CURRENT after receiving a LACPDU from the partner.
Signed-off-by: Sridhar Samudrala sridhar.samudrala@intel.com
applied, thanks
libteam@lists.fedorahosted.org