Added a kernel option to set SYNC bit of LACP

while the lagg interface is in STANDBY state
This commit is contained in:
yamaguchi 2021-11-16 04:48:43 +00:00
parent 2bf026269c
commit 6e72bac802
2 changed files with 10 additions and 3 deletions

View File

@ -1,8 +1,9 @@
# $NetBSD: files.lagg,v 1.2 2021/10/12 08:26:47 yamaguchi Exp $ # $NetBSD: files.lagg,v 1.3 2021/11/16 04:48:43 yamaguchi Exp $
file net/lagg/if_lagg.c lagg & ether needs-flag file net/lagg/if_lagg.c lagg & ether needs-flag
file net/lagg/if_lagg_lacp.c lagg & ether file net/lagg/if_lagg_lacp.c lagg & ether
file net/lagg/if_laggproto.c lagg file net/lagg/if_laggproto.c lagg
defflag opt_lagg.h LAGG_DEBUG LACP_DEBUG defflag opt_lagg.h LAGG_DEBUG LACP_DEBUG
LACP_STANDBY_SYNCED
defparam opt_lagg.h LAGG_SETCAPS_RETRY defparam opt_lagg.h LAGG_SETCAPS_RETRY

View File

@ -1,4 +1,4 @@
/* $NetBSD: if_lagg_lacp.c,v 1.7 2021/11/16 04:01:11 yamaguchi Exp $ */ /* $NetBSD: if_lagg_lacp.c,v 1.8 2021/11/16 04:48:43 yamaguchi Exp $ */
/*- /*-
* SPDX-License-Identifier: BSD-2-Clause-NetBSD * SPDX-License-Identifier: BSD-2-Clause-NetBSD
@ -31,7 +31,7 @@
*/ */
#include <sys/cdefs.h> #include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: if_lagg_lacp.c,v 1.7 2021/11/16 04:01:11 yamaguchi Exp $"); __KERNEL_RCSID(0, "$NetBSD: if_lagg_lacp.c,v 1.8 2021/11/16 04:48:43 yamaguchi Exp $");
#ifdef _KERNEL_OPT #ifdef _KERNEL_OPT
#include "opt_lagg.h" #include "opt_lagg.h"
@ -2120,6 +2120,12 @@ lacp_set_mux(struct lacp_softc *lsc, struct lacp_port *lacpp,
lacpp->lp_pending++; lacpp->lp_pending++;
break; break;
case LACP_MUX_STANDBY: case LACP_MUX_STANDBY:
#ifdef LACP_STANDBY_SYNCED
lacp_port_attached(lsc, lacpp);
lacp_disable_collecting(lacpp);
lacp_sm_assert_ntt(lacpp);
#endif
break;
case LACP_MUX_ATTACHED: case LACP_MUX_ATTACHED:
lacp_port_attached(lsc, lacpp); lacp_port_attached(lsc, lacpp);
lacp_disable_collecting(lacpp); lacp_disable_collecting(lacpp);