From 751e3f3824fc1a318f8c71ade664bd13c16b335e Mon Sep 17 00:00:00 2001 From: Zhiyong Yang Date: Wed, 26 Jun 2019 05:49:14 -0400 Subject: 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 ] [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 --- src/vnet/bonding/node.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/vnet/bonding/node.h') 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; -- cgit 1.2.3-korg