diff mbox series

net: fm: Fix a memory leak issue

Message ID 20210602063554.25281-1-Zhiqiang.Hou@nxp.com
State Accepted
Commit 3e1848778c068bddd442855792d478eb2f038665
Delegated to: Ramon Fried
Headers show
Series net: fm: Fix a memory leak issue | expand

Commit Message

Z.Q. Hou June 2, 2021, 6:35 a.m. UTC
From: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>

Fix a memory leak issue in the RX port initialization.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
---
 drivers/net/fm/eth.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Ramon Fried June 12, 2021, 6:14 p.m. UTC | #1
On Wed Jun 2, 2021 at 9:35 AM IDT, Zhiqiang Hou wrote:
> From: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
>
> Fix a memory leak issue in the RX port initialization.
>
> Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
> ---
> drivers/net/fm/eth.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/fm/eth.c b/drivers/net/fm/eth.c
> index 0e89e663f7..7c23ccc1f0 100644
> --- a/drivers/net/fm/eth.c
> +++ b/drivers/net/fm/eth.c
> @@ -288,8 +288,10 @@ static int fm_eth_rx_port_parameter_init(struct
> fm_eth *fm_eth)
>  
> /* alloc Rx buffer from main memory */
> rx_buf_pool = malloc(MAX_RXBUF_LEN * RX_BD_RING_SIZE);
> - if (!rx_buf_pool)
> + if (!rx_buf_pool) {
> + free(rx_bd_ring_base);
> return -ENOMEM;
> + }
>  
> memset(rx_buf_pool, 0, MAX_RXBUF_LEN * RX_BD_RING_SIZE);
> debug("%s: rx_buf_pool = %p\n", __func__, rx_buf_pool);
> --
> 2.17.1

Applied to u-boot-net/master, thanks!

Best regards,
Ramon Fried
diff mbox series

Patch

diff --git a/drivers/net/fm/eth.c b/drivers/net/fm/eth.c
index 0e89e663f7..7c23ccc1f0 100644
--- a/drivers/net/fm/eth.c
+++ b/drivers/net/fm/eth.c
@@ -288,8 +288,10 @@  static int fm_eth_rx_port_parameter_init(struct fm_eth *fm_eth)
 
 	/* alloc Rx buffer from main memory */
 	rx_buf_pool = malloc(MAX_RXBUF_LEN * RX_BD_RING_SIZE);
-	if (!rx_buf_pool)
+	if (!rx_buf_pool) {
+		free(rx_bd_ring_base);
 		return -ENOMEM;
+	}
 
 	memset(rx_buf_pool, 0, MAX_RXBUF_LEN * RX_BD_RING_SIZE);
 	debug("%s: rx_buf_pool = %p\n", __func__, rx_buf_pool);