From 82c5dda455ce56ffaf8813b7fbee661e6dbb7cea Mon Sep 17 00:00:00 2001 From: Steven Luong Date: Tue, 5 Mar 2019 09:38:33 -0800 Subject: lacp: passive mode support [VPP-1551] By definition, passive mode means the node does not start sending lacp pdu until it first hears from the partner or remote. - Rename ptx machine's BEGIN state to NO_PERIODIC state. - Put periodic machine in NO_PERIDOIC state when the interface is enabled for lacp. ptx machine will transition out of NO_PERIODIC state when the local node hears from the remote or when the local node is configured for active mode. - Also add send and receive statistics for debugging. Change-Id: I747953b9595ed31328b2f4f3e7a8d15d01e04d7f Signed-off-by: Steven Luong --- src/plugins/lacp/tx_machine.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'src/plugins/lacp/tx_machine.c') diff --git a/src/plugins/lacp/tx_machine.c b/src/plugins/lacp/tx_machine.c index 21b767c39d2..4cc4e68a103 100644 --- a/src/plugins/lacp/tx_machine.c +++ b/src/plugins/lacp/tx_machine.c @@ -47,7 +47,7 @@ lacp_tx_action_transmit (void *p1, void *p2) return 0; // No more than 3 LACPDUs per fast interval - if (now <= (sif->last_lacpdu_time + 0.333)) + if (now <= (sif->last_lacpdu_sent_time + 0.333)) return 0; if (sif->ntt) @@ -97,9 +97,6 @@ lacp_init_tx_machine (vlib_main_t * vm, slave_if_t * sif) { lacp_machine_dispatch (&lacp_tx_machine, vm, sif, LACP_TX_EVENT_BEGIN, &sif->tx_state); - if (sif->is_passive == 0) - lacp_machine_dispatch (&lacp_tx_machine, vm, sif, LACP_TX_EVENT_NTT, - &sif->tx_state); } /* -- cgit 1.2.3-korg