octeontx2-pf: handle otx2_mbox_get_rsp errors in otx2_dmac_flt.c
authorDipendra Khadka <kdipendra88@gmail.com>
Thu, 17 Oct 2024 19:13:54 +0000 (19:13 +0000)
committerAndrew Lunn <andrew@lunn.ch>
Tue, 22 Oct 2024 22:35:35 +0000 (17:35 -0500)
Add error pointer checks after calling otx2_mbox_get_rsp().

Fixes: 79d2be385e9e ("octeontx2-pf: offload DMAC filters to CGX/RPM block")
Fixes: fa5e0ccb8f3a ("octeontx2-pf: Add support for exact match table.")
Signed-off-by: Dipendra Khadka <kdipendra88@gmail.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dmac_flt.c

index 80d853b..2046dd0 100644 (file)
@@ -28,6 +28,11 @@ static int otx2_dmacflt_do_add(struct otx2_nic *pf, const u8 *mac,
        if (!err) {
                rsp = (struct cgx_mac_addr_add_rsp *)
                         otx2_mbox_get_rsp(&pf->mbox.mbox, 0, &req->hdr);
+               if (IS_ERR(rsp)) {
+                       mutex_unlock(&pf->mbox.lock);
+                       return PTR_ERR(rsp);
+               }
+
                *dmac_index = rsp->index;
        }
 
@@ -200,6 +205,10 @@ int otx2_dmacflt_update(struct otx2_nic *pf, u8 *mac, u32 bit_pos)
 
        rsp = (struct cgx_mac_addr_update_rsp *)
                otx2_mbox_get_rsp(&pf->mbox.mbox, 0, &req->hdr);
+       if (IS_ERR(rsp)) {
+               rc = PTR_ERR(rsp);
+               goto out;
+       }
 
        pf->flow_cfg->bmap_to_dmacindex[bit_pos] = rsp->index;