diff options
author | John Lo <loj@cisco.com> | 2020-05-14 15:02:16 -0400 |
---|---|---|
committer | Dave Wallace <dwallacelf@gmail.com> | 2020-06-11 14:44:11 +0000 |
commit | 93dd1da259fba344b4620a5241b74be5de8bd254 (patch) | |
tree | c318be5e0b072391b6e551ffd7a51777e334dbb9 /src/vnet/bonding | |
parent | a37c63c6d841168cb59aa428f89a3effc5f9669e (diff) |
l2: L2/L3 mode swicth cleanup and l2-patch fix
Cleanup L2/L3 mode switch to not redirect to/from ethernet-input node
as it is no longer necessary.
L2 patch should use sw_if_index for device feature enable/disable.
Type: fix
Signed-off-by: John Lo <loj@cisco.com>
Change-Id: I0f24161d027b07c188fd1e05276146f94c075710
(cherry picked from commit f415a3b53a51b261d08cc3312c25f250d6bc1bd6)
Diffstat (limited to 'src/vnet/bonding')
-rw-r--r-- | src/vnet/bonding/cli.c | 11 | ||||
-rw-r--r-- | src/vnet/bonding/device.c | 8 |
2 files changed, 7 insertions, 12 deletions
diff --git a/src/vnet/bonding/cli.c b/src/vnet/bonding/cli.c index d9a6408206e..92a9ff067f6 100644 --- a/src/vnet/bonding/cli.c +++ b/src/vnet/bonding/cli.c @@ -727,12 +727,11 @@ bond_enslave (vlib_main_t * vm, bond_enslave_args_t * args) bond_slave_add_del_mac_addrs (bif, sif->sw_if_index, 1 /* is_add */ ); if (bif_hw->l2_if_count) - { - ethernet_set_flags (vnm, sif_hw->hw_if_index, - ETHERNET_INTERFACE_FLAG_ACCEPT_ALL); - /* ensure all packets go to ethernet-input */ - ethernet_set_rx_redirect (vnm, sif_hw, 1); - } + ethernet_set_flags (vnm, sif_hw->hw_if_index, + ETHERNET_INTERFACE_FLAG_ACCEPT_ALL); + else + ethernet_set_flags (vnm, sif_hw->hw_if_index, + /*ETHERNET_INTERFACE_FLAG_DEFAULT_L3 */ 0); if (bif->mode == BOND_MODE_LACP) { diff --git a/src/vnet/bonding/device.c b/src/vnet/bonding/device.c index 550321b3763..b3069fe0f13 100644 --- a/src/vnet/bonding/device.c +++ b/src/vnet/bonding/device.c @@ -99,9 +99,6 @@ bond_set_l2_mode_function (vnet_main_t * vnm, sif_hw = vnet_get_sup_hw_interface (vnm, *sw_if_index); ethernet_set_flags (vnm, sif_hw->hw_if_index, ETHERNET_INTERFACE_FLAG_ACCEPT_ALL); - - /* ensure all packets go to ethernet-input */ - ethernet_set_rx_redirect (vnm, sif_hw, 1); } } else if ((bif_hw->l2_if_count == 0) && (l2_if_adjust == -1)) @@ -110,9 +107,8 @@ bond_set_l2_mode_function (vnet_main_t * vnm, vec_foreach (sw_if_index, bif->slaves) { sif_hw = vnet_get_sup_hw_interface (vnm, *sw_if_index); - - /* Allow ip packets to go directly to ip4-input etc */ - ethernet_set_rx_redirect (vnm, sif_hw, 0); + ethernet_set_flags (vnm, sif_hw->hw_if_index, + /*ETHERNET_INTERFACE_FLAG_DEFAULT_L3 */ 0); } } |