From: Steven Luong Date: Wed, 9 Oct 2019 17:29:47 +0000 (-0700) Subject: bonding: feature arc may not be enabled for the slave interface X-Git-Tag: v20.05-rc0~646 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F34%2F22634%2F3;hp=c31dc31f84961033ecb6354811e0c360b6cf5f79;p=vpp.git bonding: feature arc may not be enabled for the slave interface vnet_feature_enable_disable takes sw_if_index, not hw_if_index. If there is a subinterface created prior to the slave interface is created, sw_if_index and hw_if_index start to diverge and the problem will happen. Type: fix Signed-off-by: Steven Luong Change-Id: I11e1f099378832f83b748526c6cbeb56960fad3c --- diff --git a/src/vnet/bonding/cli.c b/src/vnet/bonding/cli.c index 604cb80c936..6d0245dc687 100644 --- a/src/vnet/bonding/cli.c +++ b/src/vnet/bonding/cli.c @@ -287,7 +287,7 @@ bond_delete_neighbor (vlib_main_t * vm, bond_if_t * bif, slave_if_t * sif) bond_disable_collecting_distributing (vm, sif); vnet_feature_enable_disable ("device-input", "bond-input", - sif_hw->hw_if_index, 0, 0, 0); + sif->sw_if_index, 0, 0, 0); /* Put back the old mac */ vnet_hw_interface_change_mac_address (vnm, sif_hw->hw_if_index, @@ -703,7 +703,7 @@ bond_enslave (vlib_main_t * vm, bond_enslave_args_t * args) } args->rv = vnet_feature_enable_disable ("device-input", "bond-input", - sif_hw->hw_if_index, 1, 0, 0); + sif->sw_if_index, 1, 0, 0); if (args->rv) {