]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commitdiff
bnxt_en: Fix deleting of Ntuple filters
authorPavan Chebbi <pavan.chebbi@broadcom.com>
Thu, 19 Feb 2026 18:53:12 +0000 (10:53 -0800)
committerJakub Kicinski <kuba@kernel.org>
Sat, 21 Feb 2026 00:34:47 +0000 (16:34 -0800)
Ntuple filters can be deleted when the interface
is down. The current code blindly sends the filter
delete command to FW. When the interface is down, all
the VNICs are deleted in the FW. When the VNIC is
freed in the FW, all the associated filters are also
freed. We need not send the free command explicitly.
Sending such command will generate FW error in the
dmesg.

In order to fix this, we can safely return from
bnxt_hwrm_cfa_ntuple_filter_free() when BNXT_STATE_OPEN
is not true which confirms the VNICs have been deleted.

Fixes: 8336a974f37d ("bnxt_en: Save user configured filters in a lookup list")
Suggested-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: Pavan Chebbi <pavan.chebbi@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Link: https://patch.msgid.link/20260219185313.2682148-3-michael.chan@broadcom.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/broadcom/bnxt/bnxt.c

index 7768d9753e2d58542236efad029f32535c67615a..8c73a723d23f471d6bd325c9223fa53b345ce048 100644 (file)
@@ -6240,6 +6240,9 @@ int bnxt_hwrm_cfa_ntuple_filter_free(struct bnxt *bp,
        int rc;
 
        set_bit(BNXT_FLTR_FW_DELETED, &fltr->base.state);
+       if (!test_bit(BNXT_STATE_OPEN, &bp->state))
+               return 0;
+
        rc = hwrm_req_init(bp, req, HWRM_CFA_NTUPLE_FILTER_FREE);
        if (rc)
                return rc;