net/bnxt: avoid invalid vnic id in set L2 Rx mask
[dpdk.git] / drivers / net / bnxt / bnxt_hwrm.c
index c7a6157..bc87735 100644 (file)
@@ -221,6 +221,9 @@ int bnxt_hwrm_cfa_l2_set_rx_mask(struct bnxt *bp,
        struct hwrm_cfa_l2_set_rx_mask_output *resp = bp->hwrm_cmd_resp_addr;
        uint32_t mask = 0;
 
+       if (vnic->fw_vnic_id == INVALID_HW_RING_ID)
+               return rc;
+
        HWRM_PREP(req, CFA_L2_SET_RX_MASK);
        req.vnic_id = rte_cpu_to_le_16(vnic->fw_vnic_id);
 
@@ -317,7 +320,7 @@ int bnxt_hwrm_clear_l2_filter(struct bnxt *bp,
        HWRM_CHECK_RESULT();
        HWRM_UNLOCK();
 
-       filter->fw_l2_filter_id = -1;
+       filter->fw_l2_filter_id = UINT64_MAX;
 
        return 0;
 }
@@ -3583,8 +3586,8 @@ int bnxt_hwrm_clear_em_filter(struct bnxt *bp, struct bnxt_filter_info *filter)
        HWRM_CHECK_RESULT();
        HWRM_UNLOCK();
 
-       filter->fw_em_filter_id = -1;
-       filter->fw_l2_filter_id = -1;
+       filter->fw_em_filter_id = UINT64_MAX;
+       filter->fw_l2_filter_id = UINT64_MAX;
 
        return 0;
 }
@@ -3695,7 +3698,7 @@ int bnxt_hwrm_clear_ntuple_filter(struct bnxt *bp,
        HWRM_CHECK_RESULT();
        HWRM_UNLOCK();
 
-       filter->fw_ntuple_filter_id = -1;
+       filter->fw_ntuple_filter_id = UINT64_MAX;
        filter->fw_l2_filter_id = UINT64_MAX;
 
        return 0;