Imported Upstream version 16.07.2
[deb_dpdk.git] / drivers / net / enic / enic_clsf.c
index e6f57be..111b194 100644 (file)
@@ -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;
                }
        }