diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/lacp/cli.c | 20 | ||||
-rw-r--r-- | src/plugins/lacp/lacp.c | 3 | ||||
-rw-r--r-- | src/vnet/bonding/cli.c | 10 | ||||
-rw-r--r-- | src/vnet/bonding/device.c | 12 | ||||
-rw-r--r-- | src/vnet/bonding/node.c | 3 |
5 files changed, 10 insertions, 38 deletions
diff --git a/src/plugins/lacp/cli.c b/src/plugins/lacp/cli.c index 10627774f56..c6184b6937e 100644 --- a/src/plugins/lacp/cli.c +++ b/src/plugins/lacp/cli.c @@ -242,17 +242,14 @@ show_lacp_fn (vlib_main_t * vm, unformat_input_t * input, slave_if_t *sif; clib_error_t *error = 0; u8 details = 0; - u32 hw_if_index, *sw_if_indices = 0; - vnet_interface_main_t *im = &vnm->interface_main; - vnet_sw_interface_t *sw; + u32 sw_if_index, *sw_if_indices = 0; while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT) { if (unformat - (input, "%U", unformat_vnet_hw_interface, vnm, &hw_if_index)) + (input, "%U", unformat_vnet_sw_interface, vnm, &sw_if_index)) { - sw = pool_elt_at_index (im->sw_interfaces, hw_if_index); - sif = bond_get_slave_by_sw_if_index (sw->sw_if_index); + sif = bond_get_slave_by_sw_if_index (sw_if_index); if (!sif) { error = clib_error_return (0, "interface is not enslaved"); @@ -304,11 +301,9 @@ debug_lacp_command_fn (vlib_main_t * vm, unformat_input_t * input, lacp_main_t *lm = &lacp_main; u8 onoff = 0; u8 input_found = 0; - u32 hw_if_index = ~0; + u32 sw_if_index = ~0; slave_if_t *sif; vnet_main_t *vnm = vnet_get_main (); - vnet_interface_main_t *im = &vnm->interface_main; - vnet_sw_interface_t *sw; /* Get a line of input. */ if (!unformat_user (input, unformat_line_input, line_input)) @@ -317,7 +312,7 @@ debug_lacp_command_fn (vlib_main_t * vm, unformat_input_t * input, while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT) { if (unformat (line_input, "%U", - unformat_vnet_hw_interface, vnm, &hw_if_index)) + unformat_vnet_sw_interface, vnm, &sw_if_index)) ; if (input_found) { @@ -346,10 +341,9 @@ debug_lacp_command_fn (vlib_main_t * vm, unformat_input_t * input, if (!input_found) return clib_error_return (0, "must specify on or off"); - if (hw_if_index != ~0) + if (sw_if_index != ~0) { - sw = pool_elt_at_index (im->sw_interfaces, hw_if_index); - sif = bond_get_slave_by_sw_if_index (sw->sw_if_index); + sif = bond_get_slave_by_sw_if_index (sw_if_index); if (!sif) return (clib_error_return (0, "Please enslave the interface first")); sif->debug = onoff; diff --git a/src/plugins/lacp/lacp.c b/src/plugins/lacp/lacp.c index 378d22be931..dfe11b18ee8 100644 --- a/src/plugins/lacp/lacp.c +++ b/src/plugins/lacp/lacp.c @@ -383,9 +383,8 @@ lacp_hw_interface_up_down (vnet_main_t * vnm, u32 hw_if_index, u32 flags) slave_if_t *sif; vnet_sw_interface_t *sw; vlib_main_t *vm = lm->vlib_main; - vnet_interface_main_t *im = &vnm->interface_main; - sw = pool_elt_at_index (im->sw_interfaces, hw_if_index); + sw = vnet_get_hw_sw_interface (vnm, hw_if_index); sif = bond_get_slave_by_sw_if_index (sw->sw_if_index); if (sif) { diff --git a/src/vnet/bonding/cli.c b/src/vnet/bonding/cli.c index 3ee99a51b62..b66c4af337d 100644 --- a/src/vnet/bonding/cli.c +++ b/src/vnet/bonding/cli.c @@ -135,10 +135,9 @@ bond_delete_neighbor (vlib_main_t * vm, bond_if_t * bif, slave_if_t * sif) bond_main_t *bm = &bond_main; vnet_main_t *vnm = vnet_get_main (); int i; - vnet_hw_interface_t *sif_hw, *bif_hw; + vnet_hw_interface_t *sif_hw; sif_hw = vnet_get_sup_hw_interface (vnm, sif->sw_if_index); - bif_hw = vnet_get_sup_hw_interface (vnm, bif->sw_if_index); bif->port_number_bitmap = clib_bitmap_set (bif->port_number_bitmap, @@ -156,13 +155,6 @@ bond_delete_neighbor (vlib_main_t * vm, bond_if_t * bif, slave_if_t * sif) } } - if (bif_hw->l2_if_count) - { - ethernet_set_flags (vnm, sif_hw->hw_if_index, 0); - /* Allow ip packets to go directly to ip4-input etc */ - ethernet_set_rx_redirect (vnm, sif_hw, 0); - } - bond_disable_collecting_distributing (vm, sif); /* Put back the old mac */ diff --git a/src/vnet/bonding/device.c b/src/vnet/bonding/device.c index a27524089aa..9e1bb9517e4 100644 --- a/src/vnet/bonding/device.c +++ b/src/vnet/bonding/device.c @@ -99,18 +99,6 @@ bond_set_l2_mode_function (vnet_main_t * vnm, ethernet_set_rx_redirect (vnm, sif_hw, 1); } } - else if ((bif_hw->l2_if_count == 0) && (l2_if_adjust == -1)) - { - /* Just removed last L2 subinterface on this port */ - vec_foreach (sw_if_index, bif->slaves) - { - sif_hw = vnet_get_sup_hw_interface (vnm, *sw_if_index); - ethernet_set_flags (vnm, sif_hw->hw_if_index, 0); - - /* Allow ip packets to go directly to ip4-input etc */ - ethernet_set_rx_redirect (vnm, sif_hw, 0); - } - } return 0; } diff --git a/src/vnet/bonding/node.c b/src/vnet/bonding/node.c index b831d40540e..65d3ba10470 100644 --- a/src/vnet/bonding/node.c +++ b/src/vnet/bonding/node.c @@ -483,9 +483,8 @@ bond_hw_interface_up_down (vnet_main_t * vnm, u32 hw_if_index, u32 flags) slave_if_t *sif; vnet_sw_interface_t *sw; vlib_main_t *vm = bm->vlib_main; - vnet_interface_main_t *im = &vnm->interface_main; - sw = pool_elt_at_index (im->sw_interfaces, hw_if_index); + sw = vnet_get_hw_sw_interface (vnm, hw_if_index); sif = bond_get_slave_by_sw_if_index (sw->sw_if_index); if (sif) { |