From: Chengwen Feng <fengcheng...@huawei.com>

The fdir hash map hold the pointers of fdir rule elements, it needs to
be set to NULL when clear all fdir rules.

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

Signed-off-by: Chengwen Feng <fengcheng...@huawei.com>
Signed-off-by: Min Hu (Connor) <humi...@huawei.com>
---
 drivers/net/hns3/hns3_fdir.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/hns3/hns3_fdir.c b/drivers/net/hns3/hns3_fdir.c
index e116d87..d043f57 100644
--- a/drivers/net/hns3/hns3_fdir.c
+++ b/drivers/net/hns3/hns3_fdir.c
@@ -1033,6 +1033,10 @@ int hns3_clear_all_fdir_filter(struct hns3_adapter *hns)
        /* flush flow director */
        rte_hash_reset(fdir_info->hash_handle);
 
+       memset(fdir_info->hash_map, 0,
+              sizeof(struct hns3_fdir_rule_ele *) *
+              fdir_info->fd_cfg.rule_num[HNS3_FD_STAGE_1]);
+
        fdir_filter = TAILQ_FIRST(&fdir_info->fdir_list);
        while (fdir_filter) {
                TAILQ_REMOVE(&fdir_info->fdir_list, fdir_filter, entries);
-- 
2.7.4

Reply via email to