This patch fixes issue that doesn't support mark only case.
Mark only action is equal to mark + passthru action.

Fixes: f5cafa961fae ("net/ice: add flow director create and destroy")
Cc: sta...@dpdk.org

Signed-off-by: Simei Su <simei...@intel.com>
---
 drivers/net/ice/ice_fdir_filter.c | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ice/ice_fdir_filter.c 
b/drivers/net/ice/ice_fdir_filter.c
index 1a85d6c..77c6ebb 100644
--- a/drivers/net/ice/ice_fdir_filter.c
+++ b/drivers/net/ice/ice_fdir_filter.c
@@ -1539,7 +1539,7 @@
                }
        }
 
-       if (dest_num == 0 || dest_num >= 2) {
+       if (dest_num >= 2) {
                rte_flow_error_set(error, EINVAL,
                           RTE_FLOW_ERROR_TYPE_ACTION, actions,
                           "Unsupported action combination");
@@ -1560,6 +1560,18 @@
                return -rte_errno;
        }
 
+       if (dest_num + mark_num + counter_num == 0) {
+               rte_flow_error_set(error, EINVAL,
+                          RTE_FLOW_ERROR_TYPE_ACTION, actions,
+                          "Emtpy action");
+               return -rte_errno;
+       }
+
+       /* set default action to PASSTHRU mode, in "mark/count only" case. */
+       if (dest_num == 0)
+               filter->input.dest_ctl =
+                       ICE_FLTR_PRGM_DESC_DEST_DIRECT_PKT_OTHER;
+
        return 0;
 }
 
-- 
1.8.3.1

Reply via email to