From: Ajit Khaparde Date: Fri, 21 Jul 2017 03:22:33 +0000 (-0500) Subject: net/bnxt: free filter before reusing it X-Git-Tag: spdx-start~2310 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=4cddfcb71b1edeed845aff0b19c9ea73622f79c6;p=dpdk.git net/bnxt: free filter before reusing it This patch sends the HWRM command to free a filter in the hardware, before using it again. Fixes: f92735db1e4c ("net/bnxt: add L2 filter alloc/init/free") Cc: stable@dpdk.org Signed-off-by: Ajit Khaparde --- diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c index e230b468ee..4b1810c238 100644 --- a/drivers/net/bnxt/bnxt_hwrm.c +++ b/drivers/net/bnxt/bnxt_hwrm.c @@ -352,6 +352,9 @@ int bnxt_hwrm_set_filter(struct bnxt *bp, struct hwrm_cfa_l2_filter_alloc_output *resp = bp->hwrm_cmd_resp_addr; uint32_t enables = 0; + if (filter->fw_l2_filter_id != UINT64_MAX) + bnxt_hwrm_clear_filter(bp, filter); + HWRM_PREP(req, CFA_L2_FILTER_ALLOC, -1, resp); req.flags = rte_cpu_to_le_32(filter->flags);