summaryrefslogtreecommitdiffstats
path: root/src/vnet/bonding/node.h
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/node.h
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/node.h')
-rw-r--r--src/vnet/bonding/node.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/vnet/bonding/node.h b/src/vnet/bonding/node.h
index 178215073d3..94b43dcd1d9 100644
--- a/src/vnet/bonding/node.h
+++ b/src/vnet/bonding/node.h
@@ -82,6 +82,7 @@ typedef struct
u8 hw_addr[6];
u8 mode;
u8 lb;
+ u8 numa_only;
/* return */
u32 sw_if_index;
int rv;
@@ -117,6 +118,7 @@ typedef struct
u8 interface_name[64];
u8 mode;
u8 lb;
+ u8 numa_only;
u32 active_slaves;
u32 slaves;
} bond_interface_details_t;
@@ -187,6 +189,14 @@ typedef struct
lacp_port_info_t actor;
u8 individual_aggregator;
+ /* If the flag numa_only is set, it means that only slaves
+ on local numa node works for lacp mode if have at least one,
+ otherwise it works as usual. */
+ u8 numa_only;
+
+ /* How many slaves on local numa node are there in lacp mode? */
+ word n_numa_slaves;
+
u32 group;
uword *port_number_bitmap;
u8 use_custom_mac;