diff options
author | Neale Ranns <nranns@cisco.com> | 2017-04-21 01:07:59 -0700 |
---|---|---|
committer | Damjan Marion <dmarion.lists@gmail.com> | 2017-04-26 15:31:41 +0000 |
commit | 227038a444b98f922b4a4f44b85ae60f9ee86e1c (patch) | |
tree | d4268410e3f860bb01386f4242e023324885801d /src/vnet/fib/ip6_fib.c | |
parent | 9806eae1f5f3953f7ac2c5bd07061a94387d757e (diff) |
IP Flow Hash Config fixes
- the flow hash config is (and was) cached on the load-balance object so the fib_table_t struct is not used a switch time. Therefore changes to the table's flow hash config need to be propagated to all load-balances and hance all FIB entries in the table.
- enable API for setting the IPv6 table flow hash config
- use only the hash config in the fib_table_t object and not on the ipX_fib_t
- add tests.
Change-Id: Ib804c11162c6d4972c764957562c372f663e05d4
Signed-off-by: Neale Ranns <nranns@cisco.com>
Diffstat (limited to 'src/vnet/fib/ip6_fib.c')
-rw-r--r-- | src/vnet/fib/ip6_fib.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/src/vnet/fib/ip6_fib.c b/src/vnet/fib/ip6_fib.c index d00f4c558b2..e046b3494e9 100644 --- a/src/vnet/fib/ip6_fib.c +++ b/src/vnet/fib/ip6_fib.c @@ -74,9 +74,7 @@ create_fib_with_table_id (u32 table_id) fib_table->ft_table_id = v6_fib->table_id = table_id; - fib_table->ft_flow_hash_config = - v6_fib->flow_hash_config = - IP_FLOW_HASH_DEFAULT; + fib_table->ft_flow_hash_config = IP_FLOW_HASH_DEFAULT; vnet_ip6_fib_init(fib_table->ft_index); fib_table_lock(fib_table->ft_index, FIB_PROTOCOL_IP6); @@ -390,12 +388,6 @@ u32 ip6_fib_table_fwding_lookup_with_if_index (ip6_main_t * im, return ip6_fib_table_fwding_lookup(im, fib_index, dst); } -flow_hash_config_t -ip6_fib_table_get_flow_hash_config (u32 fib_index) -{ - return (ip6_fib_get(fib_index)->flow_hash_config); -} - u32 ip6_fib_table_get_index_for_sw_if_index (u32 sw_if_index) { @@ -643,7 +635,7 @@ ip6_show_fib (vlib_main_t * vm, vlib_cli_output (vm, "%s, fib_index %d, flow hash: %U", fib_table->ft_desc, fib->index, - format_ip_flow_hash_config, fib->flow_hash_config); + format_ip_flow_hash_config, fib_table->ft_flow_hash_config); /* Show summary? */ if (! verbose) |