From: Sven Ulland Date: Mon, 21 Jul 2014 13:41:25 +0000 (+0200) Subject: [lacp] Set "aggregatable" flag in response LACPDU X-Git-Tag: v1.20.1~1122 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=de65a240b98b69e125fd8014ccff2c666d64361d;p=thirdparty%2Fipxe.git [lacp] Set "aggregatable" flag in response LACPDU Some switches do not allow an individual link (as defined in IEEE Std 802.3ad-2000 section 43.3.5) to work alone in a link aggregation group as described in section 43.3.6. This is verified on Dell's PowerConnect M6220, based on the Broadcom Strata XGS-IV chipset. Set the LACP_STATE_AGGREGATABLE flag in the actor.state field to announce link aggregation in the response LACPDU, which will have the switch enable the link aggregation group and allow frames to pass. Signed-off-by: Michael Brown --- diff --git a/src/net/eth_slow.c b/src/net/eth_slow.c index 69c38f30a..db54b55a4 100644 --- a/src/net/eth_slow.c +++ b/src/net/eth_slow.c @@ -167,7 +167,8 @@ static int eth_slow_lacp_rx ( struct io_buffer *iobuf, lacp->actor.key = htons ( 1 ); lacp->actor.port_priority = htons ( LACP_PORT_PRIORITY_MAX ); lacp->actor.port = htons ( 1 ); - lacp->actor.state = ( LACP_STATE_IN_SYNC | + lacp->actor.state = ( LACP_STATE_AGGREGATABLE | + LACP_STATE_IN_SYNC | LACP_STATE_COLLECTING | LACP_STATE_DISTRIBUTING | ( lacp->partner.state & LACP_STATE_FAST ) );