Message ID | 20230406063120.3626731-1-harshit.m.mogalapalli@oracle.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 8ce07be703456acb00e83d99f3b8036252c33b02 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | niu: Fix missing unwind goto in niu_alloc_channels() | expand |
On Wed, Apr 05, 2023 at 11:31:18PM -0700, Harshit Mogalapalli wrote: > Smatch reports: drivers/net/ethernet/sun/niu.c:4525 > niu_alloc_channels() warn: missing unwind goto? > > If niu_rbr_fill() fails, then we are directly returning 'err' without > freeing the channels. > > Fix this by changing direct return to a goto 'out_err'. > > Fixes: a3138df9f20e ("[NIU]: Add Sun Neptune ethernet driver.") > Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com> > --- > This is purely based on static analysis. Only compile tested. Reviewed-by: Simon Horman <simon.horman@corigine.com>
Hello: This patch was applied to netdev/net.git (main) by David S. Miller <davem@davemloft.net>: On Wed, 5 Apr 2023 23:31:18 -0700 you wrote: > Smatch reports: drivers/net/ethernet/sun/niu.c:4525 > niu_alloc_channels() warn: missing unwind goto? > > If niu_rbr_fill() fails, then we are directly returning 'err' without > freeing the channels. > > Fix this by changing direct return to a goto 'out_err'. > > [...] Here is the summary with links: - niu: Fix missing unwind goto in niu_alloc_channels() https://git.kernel.org/netdev/net/c/8ce07be70345 You are awesome, thank you!
diff --git a/drivers/net/ethernet/sun/niu.c b/drivers/net/ethernet/sun/niu.c index ab8b09a9ef61..7a2e76776297 100644 --- a/drivers/net/ethernet/sun/niu.c +++ b/drivers/net/ethernet/sun/niu.c @@ -4522,7 +4522,7 @@ static int niu_alloc_channels(struct niu *np) err = niu_rbr_fill(np, rp, GFP_KERNEL); if (err) - return err; + goto out_err; } tx_rings = kcalloc(num_tx_rings, sizeof(struct tx_ring_info),
Smatch reports: drivers/net/ethernet/sun/niu.c:4525 niu_alloc_channels() warn: missing unwind goto? If niu_rbr_fill() fails, then we are directly returning 'err' without freeing the channels. Fix this by changing direct return to a goto 'out_err'. Fixes: a3138df9f20e ("[NIU]: Add Sun Neptune ethernet driver.") Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com> --- This is purely based on static analysis. Only compile tested. --- drivers/net/ethernet/sun/niu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)