aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/bonding/device.c
diff options
context:
space:
mode:
authorZhiyong Yang <zhiyong.yang@intel.com>2019-06-26 05:49:14 -0400
committerJohn Lo <loj@cisco.com>2019-07-19 16:12:02 +0000
commit751e3f3824fc1a318f8c71ade664bd13c16b335e (patch)
tree205708ac99c309991acef1e04fb62fa7ec714c23 /src/vnet/bonding/device.c
parent8ac1d6d05f2a0d6759284d4eeb5079644a5c8c86 (diff)
bonding: add support for numa-only in lacp mode
If numa-only is set, Only slaves on local numa node transmit pkts if have at least one, otherwise the bond interface works as usual. CLI change: create bond mode lacp [load-balance { l2 | l23 | l34 } {numa-only}] [hw-addr <mac-address>] [id <if-id>] The new member "u8 numa_only;" is also added to bond_create_if_args_t. Type: feature Change-Id: Icdccedafb0738d8c9d4a5acce909ce562428c071 Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
Diffstat (limited to 'src/vnet/bonding/device.c')
-rw-r--r--src/vnet/bonding/device.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/vnet/bonding/device.c b/src/vnet/bonding/device.c
index b76396a99e8..c9e8b4a50eb 100644
--- a/src/vnet/bonding/device.c
+++ b/src/vnet/bonding/device.c
@@ -699,6 +699,11 @@ VNET_DEVICE_CLASS_TX_FN (bond_dev_class) (vlib_main_t * vm,
goto done;
}
+ /* if have at least one slave on local numa node, only slaves on local numa
+ node will transmit pkts when bif->local_numa_only is enabled */
+ if (bif->n_numa_slaves >= 1)
+ n_slaves = bif->n_numa_slaves;
+
if (bif->lb == BOND_LB_L2)
bond_tx_inline (vm, bif, bufs, hashes, n_left, n_slaves, BOND_LB_L2);
else if (bif->lb == BOND_LB_L34)