lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240923155606.GJ3426578@kernel.org>
Date: Mon, 23 Sep 2024 16:56:06 +0100
From: Simon Horman <horms@...nel.org>
To: Dipendra Khadka <kdipendra88@...il.com>
Cc: sgoutham@...vell.com, gakula@...vell.com, sbhatta@...vell.com,
	hkelam@...vell.com, davem@...emloft.net, edumazet@...gle.com,
	kuba@...nel.org, pabeni@...hat.com, netdev@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] Staging: net: nic: Add error pointer check in
 otx2_flows.c

On Sun, Sep 22, 2024 at 06:52:35PM +0000, Dipendra Khadka wrote:
> Smatch reported following:
> '''
> drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c:123 otx2_alloc_mcam_entries() error: 'rsp' dereferencing possible ERR_PTR()
> drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c:201 otx2_mcam_entry_init() error: 'rsp' dereferencing possible ERR_PTR()
> drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c:236 otx2_mcam_entry_init() error: 'frsp' dereferencing possible ERR_PTR()
> '''
> 
> Adding error pointer check after calling otx2_mbox_get_rsp.
> 
> Signed-off-by: Dipendra Khadka <kdipendra88@...il.com>

Hi Dipendra,

As noted by Andrew Lunn in relation to another patch [1],
this driver isn't in Staging so the subject is not correct.
And moreover, as Andrew suggested, please take a look at [2].

[1] https://lore.kernel.org/all/13fbb6c3-661f-477a-b33b-99303cd11622@lunn.ch/
[2] https://www.kernel.org/doc/html/latest/process/maintainer-netdev.html

> ---
>  .../ethernet/marvell/octeontx2/nic/otx2_flows.c   | 15 +++++++++++++++
>  1 file changed, 15 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..4b61236c7c41 100644
> --- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c
> +++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c
> @@ -120,6 +120,11 @@ 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);

nit: No blank line here please.
     Similarly in the other hunks of this patch.

>  
> +		if (IS_ERR(rsp)) {
> +			mutex_unlock(&bfvf->mbox.lock);

This doesn't compile as bfvf doesn't exit in this context.

> +			return PTR_ERR(rsp);

Looking at error handling elsewhere in the same loop, perhaps this
is appropriate instead of returning.

			goto exit;

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

...

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ