mirror of
https://github.com/openvswitch/ovs
synced 2025-10-25 15:07:05 +00:00
lacp: Require successful LACP negotiations when configured.
In the original Open vSwitch LACP implementation, when no slaves found a LACP partner, the LACP module would attach all of them. This allowed the LACP bond to fall back to a standard bond when partnered with a non-LACP switch. In practice, this has caused confusion with marginal benefit, so this feature is removed with this patch. Signed-off-by: Ethan Jackson <ethan@nicira.com>
This commit is contained in:
@@ -29,6 +29,12 @@ enum lacp_time {
|
||||
LACP_TIME_CUSTOM /* Nonstandard custom mode. */
|
||||
};
|
||||
|
||||
enum lacp_status {
|
||||
LACP_NEGOTIATED, /* Successful LACP negotations. */
|
||||
LACP_CONFIGURED, /* LACP is enabled but not negotiated. */
|
||||
LACP_DISABLED /* LACP is not enabled. */
|
||||
};
|
||||
|
||||
struct lacp_settings {
|
||||
char *name; /* Name (for debugging). */
|
||||
uint8_t id[ETH_ADDR_LEN]; /* System ID. Must be nonzero. */
|
||||
@@ -48,7 +54,7 @@ bool lacp_is_active(const struct lacp *);
|
||||
|
||||
void lacp_process_packet(struct lacp *, const void *slave,
|
||||
const struct ofpbuf *packet);
|
||||
bool lacp_negotiated(const struct lacp *);
|
||||
enum lacp_status lacp_status(const struct lacp *);
|
||||
|
||||
struct lacp_slave_settings {
|
||||
char *name; /* Name (for debugging). */
|
||||
|
||||
Reference in New Issue
Block a user