diff options
author | Ahmed Abdelsalam <ahabdels@cisco.com> | 2020-11-20 18:56:09 +0000 |
---|---|---|
committer | Ole Tr�an <otroan@employees.org> | 2021-01-21 10:59:46 +0000 |
commit | f2984bbb013acb0d6872e8fbb2f9d57d3e4f49b9 (patch) | |
tree | 2b53a21de615e7f6fabcf96e2b15e7070adc1736 /src/vnet/ip/ip4_forward.c | |
parent | 03fabbd22215d306fb66c51f952480631d67c9dc (diff) |
ip: use IPv6 flowlabel in flow hash computation
extends ip6_compute_flow_hash() to include IPv6 flowlabel in flowhash computation
Type: improvement
Signed-off-by: Ahmed Abdelsalam <ahabdels@cisco.com>
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
Change-Id: Id1aaa20c9dac729c22b714eea1cdd6e9e4d1f75e
Diffstat (limited to 'src/vnet/ip/ip4_forward.c')
-rw-r--r-- | src/vnet/ip/ip4_forward.c | 28 |
1 files changed, 7 insertions, 21 deletions
diff --git a/src/vnet/ip/ip4_forward.c b/src/vnet/ip/ip4_forward.c index bb70805b4e6..332c483aa9d 100644 --- a/src/vnet/ip/ip4_forward.c +++ b/src/vnet/ip/ip4_forward.c @@ -2771,24 +2771,6 @@ VLIB_CLI_COMMAND (lookup_test_command, static) = }; /* *INDENT-ON* */ -#ifndef CLIB_MARCH_VARIANT -int -vnet_set_ip4_flow_hash (u32 table_id, u32 flow_hash_config) -{ - u32 fib_index; - - fib_index = fib_table_find (FIB_PROTOCOL_IP4, table_id); - - if (~0 == fib_index) - return VNET_API_ERROR_NO_SUCH_FIB; - - fib_table_set_flow_hash_config (fib_index, FIB_PROTOCOL_IP4, - flow_hash_config); - - return 0; -} -#endif - static clib_error_t * set_ip_flow_hash_command_fn (vlib_main_t * vm, unformat_input_t * input, @@ -2803,8 +2785,12 @@ set_ip_flow_hash_command_fn (vlib_main_t * vm, { if (unformat (input, "table %d", &table_id)) matched = 1; -#define _(a,v) \ - else if (unformat (input, #a)) { flow_hash_config |= v; matched=1;} +#define _(a, b, v) \ + else if (unformat (input, #a)) \ + { \ + flow_hash_config |= v; \ + matched = 1; \ + } foreach_flow_hash_bit #undef _ else @@ -2815,7 +2801,7 @@ set_ip_flow_hash_command_fn (vlib_main_t * vm, return clib_error_return (0, "unknown input `%U'", format_unformat_error, input); - rv = vnet_set_ip4_flow_hash (table_id, flow_hash_config); + rv = ip_flow_hash_set (AF_IP4, table_id, flow_hash_config); switch (rv) { case 0: |