]> git.baikalelectronics.ru Git - kernel.git/commit
bnx2x: fix potential memory leak in bnx2x_tpa_stop()
authorJianglei Nie <niejianglei2021@163.com>
Fri, 30 Sep 2022 06:28:43 +0000 (14:28 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 26 Oct 2022 11:22:26 +0000 (13:22 +0200)
commitf43fbc4d2ddad41e706cc969258384bb684a3482
tree246dffc8557a5232aa5c4cce6975484bef956fd3
parentc84c58ec4710456cfb1703d199db258e7fb2ba73
bnx2x: fix potential memory leak in bnx2x_tpa_stop()

[ Upstream commit 74566b14b9aa9b3f0ce7172358f8b6531d51b269 ]

bnx2x_tpa_stop() allocates a memory chunk from new_data with
bnx2x_frag_alloc(). The new_data should be freed when gets some error.
But when "pad + len > fp->rx_buf_size" is true, bnx2x_tpa_stop() returns
without releasing the new_data, which will lead to a memory leak.

We should free the new_data with bnx2x_frag_free() when "pad + len >
fp->rx_buf_size" is true.

Fixes: ab406322156501e0d5b80d50445ab59c64db717c ("bnx2x: fix possible panic under memory stress")
Signed-off-by: Jianglei Nie <niejianglei2021@163.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c