diff options
Diffstat (limited to 'drivers/net/enic/enic_clsf.c')
-rw-r--r-- | drivers/net/enic/enic_clsf.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/enic/enic_clsf.c b/drivers/net/enic/enic_clsf.c index e6f57bea..111b1942 100644 --- a/drivers/net/enic/enic_clsf.c +++ b/drivers/net/enic/enic_clsf.c @@ -120,7 +120,9 @@ int enic_fdir_add_fltr(struct enic *enic, struct rte_eth_fdir_filter *params) return -ENOTSUP; } - queue = params->action.rx_queue; + /* Get the enicpmd RQ from the DPDK Rx queue */ + queue = enic_sop_rq(params->action.rx_queue); + /* See if the key is already there in the table */ pos = rte_hash_del_key(enic->fdir.hash, params); switch (pos) { @@ -238,6 +240,7 @@ void enic_clsf_destroy(struct enic *enic) vnic_dev_classifier(enic->vdev, CLSF_DEL, &key->fltr_id, NULL); rte_free(key); + enic->fdir.nodes[index] = NULL; } } |