[dpdk-dev] [PATCH v1 4/5] net/ice: add outer input set mask check

Zhirun Yan zhirun.yan at intel.com
Mon Dec 21 07:51:49 CET 2020


Distinguish input set mask for inner/outer. Add outer input set
mask check.

Signed-off-by: Zhirun Yan <zhirun.yan at intel.com>
---
 drivers/net/ice/ice_fdir_filter.c  | 3 ++-
 drivers/net/ice/ice_generic_flow.c | 2 ++
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ice/ice_fdir_filter.c b/drivers/net/ice/ice_fdir_filter.c
index 76e0a8df38..2d2b261368 100644
--- a/drivers/net/ice/ice_fdir_filter.c
+++ b/drivers/net/ice/ice_fdir_filter.c
@@ -2020,7 +2020,8 @@ ice_fdir_parse(struct ice_adapter *ad,
 	if (ret)
 		goto error;
 	input_set = filter->input_set | filter->outer_input_set;
-	if (!input_set || input_set & ~item->input_set_mask) {
+	if (!input_set || filter->input_set & ~item->input_set_mask ||
+	    filter->outer_input_set & ~item->input_set_mask_f) {
 		rte_flow_error_set(error, EINVAL,
 				   RTE_FLOW_ERROR_TYPE_ITEM_SPEC,
 				   pattern,
diff --git a/drivers/net/ice/ice_generic_flow.c b/drivers/net/ice/ice_generic_flow.c
index 1429cbc3b6..6c20b070c7 100644
--- a/drivers/net/ice/ice_generic_flow.c
+++ b/drivers/net/ice/ice_generic_flow.c
@@ -2088,6 +2088,8 @@ ice_search_pattern_match_item(const struct rte_flow_item pattern[],
 					items)) {
 			pattern_match_item->input_set_mask =
 				array[i].input_set_mask;
+			pattern_match_item->input_set_mask_f =
+				array[i].input_set_mask_f;
 			pattern_match_item->pattern_list =
 				array[i].pattern_list;
 			pattern_match_item->meta = array[i].meta;
-- 
2.25.1



More information about the dev mailing list