Re: [PATCH net v3 3/6] octeontx2-pf: handle otx2_mbox_get_rsp errors in otx2_flows.c

From: Simon Horman
Date: Tue Oct 08 2024 - 09:21:06 EST


On Sun, Oct 06, 2024 at 04:43:21PM +0000, Dipendra Khadka wrote:
> Adding error pointer check after calling otx2_mbox_get_rsp().
>
> Fixes: 9917060fc30a ("octeontx2-pf: Cleanup flow rule management")
> Fixes: f0a1913f8a6f ("octeontx2-pf: Add support for ethtool ntuple filters")
> Fixes: 674b3e164238 ("octeontx2-pf: Add additional checks while configuring ucast/bcast/mcast rules")
> Signed-off-by: Dipendra Khadka <kdipendra88@xxxxxxxxx>
> ---
> v3:
> - Included in the patch set
> - Changed patch subject
> - Added Fixes: tag
> v2: https://lore.kernel.org/all/20240923063323.1935-1-kdipendra88@xxxxxxxxx/
> - Changed the subject to net
> - Changed the typo of the vairable from bfvp to pfvf
> v1: https://lore.kernel.org/all/20240922185235.50413-1-kdipendra88@xxxxxxxxx/
> .../net/ethernet/marvell/octeontx2/nic/otx2_flows.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c
> index 98c31a16c70b..c96f115995f8 100644
> --- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c
> +++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c
> @@ -119,6 +119,10 @@ int otx2_alloc_mcam_entries(struct otx2_nic *pfvf, u16 count)
>
> rsp = (struct npc_mcam_alloc_entry_rsp *)otx2_mbox_get_rsp
> (&pfvf->mbox.mbox, 0, &req->hdr);
> + if (IS_ERR(rsp)) {
> + allocated = PTR_ERR(rsp);
> + goto exit;

This does not seem consistent with other error handling within the same
loop. I'm unsure if it is correct, but my reading that the current approach
is:

if (IS_ERR(rsp))
goto exit;

> + }
>
> for (ent = 0; ent < rsp->count; ent++)
> flow_cfg->flow_ent[ent + allocated] = rsp->entry_list[ent];

...