[v2,1/6] net/hns3: fix incorrect interception with filter director

Message ID 1609904792-63280-2-git-send-email-oulijun@huawei.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers
Series some bugfixes for hns3 |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Lijun Ou Jan. 6, 2021, 3:46 a.m. UTC
  The rte_fdir_conf structure has deprecated and users need
to use the specified rule parameters of rte_flow structure
when configure a flow rule. As a result, it is incorrectly
used in the rte_flow API.

Fixes: fcba820d9b9e ("net/hns3: support flow director")
Cc: stable@dpdk.org

Signed-off-by: Lijun Ou <oulijun@huawei.com>
---
 drivers/net/hns3/hns3_flow.c | 5 -----
 1 file changed, 5 deletions(-)
  

Comments

Thomas Monjalon Jan. 19, 2021, 9:27 p.m. UTC | #1
06/01/2021 04:46, Lijun Ou:
> The rte_fdir_conf structure has deprecated and users need
> to use the specified rule parameters of rte_flow structure
> when configure a flow rule. As a result, it is incorrectly
> used in the rte_flow API.

Note: it should be "flow director" in the title.

I really don't understand why the hns3 PMD is based
on flow director concept, because:
1/ this is an Intel design
2/ it was already deprecated when hns3 started his development

Please could you explain if there is a HW constraint
or something else I'm missing?
  

Patch

diff --git a/drivers/net/hns3/hns3_flow.c b/drivers/net/hns3/hns3_flow.c
index ee6ec15..f303df4 100644
--- a/drivers/net/hns3/hns3_flow.c
+++ b/drivers/net/hns3/hns3_flow.c
@@ -1208,11 +1208,6 @@  hns3_parse_fdir_filter(struct rte_eth_dev *dev,
 					  RTE_FLOW_ERROR_TYPE_HANDLE, NULL,
 					  "Fdir not supported in VF");
 
-	if (dev->data->dev_conf.fdir_conf.mode != RTE_FDIR_MODE_PERFECT)
-		return rte_flow_error_set(error, ENOTSUP,
-					  RTE_FLOW_ERROR_TYPE_HANDLE, NULL,
-					  "fdir_conf.mode isn't perfect");
-
 	step_mngr.items = first_items;
 	step_mngr.count = ARRAY_SIZE(first_items);
 	for (item = pattern; item->type != RTE_FLOW_ITEM_TYPE_END; item++) {