net/i40e: fix flow director initialisation
authorBernard Iremonger <bernard.iremonger@intel.com>
Tue, 7 Apr 2020 15:26:41 +0000 (16:26 +0100)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 21 Apr 2020 11:57:09 +0000 (13:57 +0200)
Remove references to struct rte_fdir_conf which is deprecated,
in i40e_flow_parse_fdir_filter(), i40e_flow_destroy() and
i40e_flow_add_del_fdir_filter().

Fixes: c3be43817cfb ("net/i40e: fix unexpected skip FDIR setup")
Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically")
Fixes: 4149825bbdb9 ("net/i40e: finish integration FDIR with generic flow API")
Cc: stable@dpdk.org
Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Beilei Xing <beilei.xing@intel.com>
drivers/net/i40e/i40e_fdir.c
drivers/net/i40e/i40e_flow.c

index 2f24615..d59399a 100644 (file)
@@ -1695,8 +1695,8 @@ i40e_flow_add_del_fdir_filter(struct rte_eth_dev *dev,
        struct i40e_fdir_filter check_filter; /* Check if the filter exists */
        int ret = 0;
 
-       if (dev->data->dev_conf.fdir_conf.mode != RTE_FDIR_MODE_PERFECT) {
-               PMD_DRV_LOG(ERR, "FDIR is not enabled, please check the mode in fdir_conf.");
+       if (pf->fdir.fdir_vsi == NULL) {
+               PMD_DRV_LOG(ERR, "FDIR is not enabled");
                return -ENOTSUP;
        }
 
index d1bc960..7e64ae5 100644 (file)
@@ -3445,8 +3445,7 @@ i40e_flow_parse_fdir_filter(struct rte_eth_dev *dev,
 
        cons_filter_type = RTE_ETH_FILTER_FDIR;
 
-       if (dev->data->dev_conf.fdir_conf.mode != RTE_FDIR_MODE_PERFECT ||
-               pf->fdir.fdir_vsi == NULL) {
+       if (pf->fdir.fdir_vsi == NULL) {
                /* Enable fdir when fdir flow is added at first time. */
                ret = i40e_fdir_setup(pf);
                if (ret != I40E_SUCCESS) {
@@ -3462,8 +3461,6 @@ i40e_flow_parse_fdir_filter(struct rte_eth_dev *dev,
                                           NULL, "Failed to configure fdir.");
                        goto err;
                }
-
-               dev->data->dev_conf.fdir_conf.mode = RTE_FDIR_MODE_PERFECT;
        }
 
        return 0;
@@ -5151,8 +5148,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev,
                /* If the last flow is destroyed, disable fdir. */
                if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) {
                        i40e_fdir_teardown(pf);
-                       dev->data->dev_conf.fdir_conf.mode =
-                                  RTE_FDIR_MODE_NONE;
                        i40e_fdir_rx_proc_enable(dev, 0);
                }
                break;