From 291169addfbd6987e50c90df1ec62b5b4f8d6f4e Mon Sep 17 00:00:00 2001 From: Andriy Yurkiv Date: Fri, 17 Jan 2025 14:29:14 +0200 Subject: [PATCH] [hash] add SAI_NATIVE_HASH_FIELD_IPV6_FLOW_LABEL to hash-field map for ECMP/LAG switch hash configuration Signed-off-by: Andriy Yurkiv --- orchagent/switch/switch_capabilities.cpp | 3 ++- orchagent/switch/switch_helper.cpp | 3 ++- orchagent/switch/switch_schema.h | 1 + tests/test_hash.py | 3 ++- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/orchagent/switch/switch_capabilities.cpp b/orchagent/switch/switch_capabilities.cpp index d1f191bf39..049d9894e9 100644 --- a/orchagent/switch/switch_capabilities.cpp +++ b/orchagent/switch/switch_capabilities.cpp @@ -63,7 +63,8 @@ static const std::unordered_map swHashHash { SAI_NATIVE_HASH_FIELD_INNER_DST_IP, SWITCH_HASH_FIELD_INNER_DST_IP }, { SAI_NATIVE_HASH_FIELD_INNER_SRC_IP, SWITCH_HASH_FIELD_INNER_SRC_IP }, { SAI_NATIVE_HASH_FIELD_INNER_L4_DST_PORT, SWITCH_HASH_FIELD_INNER_L4_DST_PORT }, - { SAI_NATIVE_HASH_FIELD_INNER_L4_SRC_PORT, SWITCH_HASH_FIELD_INNER_L4_SRC_PORT } + { SAI_NATIVE_HASH_FIELD_INNER_L4_SRC_PORT, SWITCH_HASH_FIELD_INNER_L4_SRC_PORT }, + { SAI_NATIVE_HASH_FIELD_IPV6_FLOW_LABEL, SWITCH_HASH_FIELD_IPV6_FLOW_LABEL } }; static const std::unordered_map swHashAlgorithmMap = diff --git a/orchagent/switch/switch_helper.cpp b/orchagent/switch/switch_helper.cpp index 23a7c3fd5a..8d2d5d71aa 100644 --- a/orchagent/switch/switch_helper.cpp +++ b/orchagent/switch/switch_helper.cpp @@ -38,7 +38,8 @@ static const std::unordered_map swHashHash { SWITCH_HASH_FIELD_INNER_DST_IP, SAI_NATIVE_HASH_FIELD_INNER_DST_IP }, { SWITCH_HASH_FIELD_INNER_SRC_IP, SAI_NATIVE_HASH_FIELD_INNER_SRC_IP }, { SWITCH_HASH_FIELD_INNER_L4_DST_PORT, SAI_NATIVE_HASH_FIELD_INNER_L4_DST_PORT }, - { SWITCH_HASH_FIELD_INNER_L4_SRC_PORT, SAI_NATIVE_HASH_FIELD_INNER_L4_SRC_PORT } + { SWITCH_HASH_FIELD_INNER_L4_SRC_PORT, SAI_NATIVE_HASH_FIELD_INNER_L4_SRC_PORT }, + { SWITCH_HASH_FIELD_IPV6_FLOW_LABEL, SAI_NATIVE_HASH_FIELD_IPV6_FLOW_LABEL } }; static const std::unordered_map swHashAlgorithmMap = diff --git a/orchagent/switch/switch_schema.h b/orchagent/switch/switch_schema.h index 16a17f179c..64c8360170 100644 --- a/orchagent/switch/switch_schema.h +++ b/orchagent/switch/switch_schema.h @@ -20,6 +20,7 @@ #define SWITCH_HASH_FIELD_INNER_SRC_IP "INNER_SRC_IP" #define SWITCH_HASH_FIELD_INNER_L4_DST_PORT "INNER_L4_DST_PORT" #define SWITCH_HASH_FIELD_INNER_L4_SRC_PORT "INNER_L4_SRC_PORT" +#define SWITCH_HASH_FIELD_IPV6_FLOW_LABEL "IPV6_FLOW_LABEL" #define SWITCH_HASH_ECMP_HASH "ecmp_hash" #define SWITCH_HASH_LAG_HASH "lag_hash" diff --git a/tests/test_hash.py b/tests/test_hash.py index b84dd91eaf..0158530710 100644 --- a/tests/test_hash.py +++ b/tests/test_hash.py @@ -50,7 +50,8 @@ "SAI_NATIVE_HASH_FIELD_DST_IP", "SAI_NATIVE_HASH_FIELD_SRC_IP", "SAI_NATIVE_HASH_FIELD_L4_DST_PORT", - "SAI_NATIVE_HASH_FIELD_L4_SRC_PORT" + "SAI_NATIVE_HASH_FIELD_L4_SRC_PORT", + "SAI_NATIVE_HASH_FIELD_IPV6_FLOW_LABEL" ] SAI_INNER_HASH_FIELD_LIST = [ "SAI_NATIVE_HASH_FIELD_INNER_DST_MAC",