diff mbox series

net/mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump

Message ID 20190927223729.18043-1-navid.emamdoost@gmail.com (mailing list archive)
State Not Applicable
Headers show
Series net/mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump | expand

Commit Message

Navid Emamdoost Sept. 27, 2019, 10:37 p.m. UTC
In mlx5_fw_fatal_reporter_dump if mlx5_crdump_collect fails the
allocated memory for cr_data must be released otherwise there will be
memory leak. To fix this, this commit changes the return instruction
into goto error handling.

Fixes: 9b1f29823605 ("net/mlx5: Add support for FW fatal reporter dump")

Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
---
 drivers/net/ethernet/mellanox/mlx5/core/health.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Leon Romanovsky Sept. 28, 2019, 6:07 a.m. UTC | #1
On Fri, Sep 27, 2019 at 05:37:28PM -0500, Navid Emamdoost wrote:
> In mlx5_fw_fatal_reporter_dump if mlx5_crdump_collect fails the
> allocated memory for cr_data must be released otherwise there will be
> memory leak. To fix this, this commit changes the return instruction
> into goto error handling.
>
> Fixes: 9b1f29823605 ("net/mlx5: Add support for FW fatal reporter dump")
>
> Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
> ---
>  drivers/net/ethernet/mellanox/mlx5/core/health.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

General note, if you don't write "To:" in your emails, most probably
your emails will be missed by relevant people.

I assume that Saeed will pick this patch and fix extra line between
Fixes and SOB.

Thanks, for fixing it.
Saeed Mahameed Oct. 15, 2019, 8:33 p.m. UTC | #2
On Fri, 2019-09-27 at 17:37 -0500, Navid Emamdoost wrote:
> In mlx5_fw_fatal_reporter_dump if mlx5_crdump_collect fails the
> allocated memory for cr_data must be released otherwise there will be
> memory leak. To fix this, this commit changes the return instruction
> into goto error handling.
> 
> Fixes: 9b1f29823605 ("net/mlx5: Add support for FW fatal reporter
> dump")
> 
> Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
> 

Applied to net-next-mlx5, will be sent to net-next shortly, i will fix
the extra empty line as Leon pointed out.

Thanks,
Saeed.

> ---
>  drivers/net/ethernet/mellanox/mlx5/core/health.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/health.c
> b/drivers/net/ethernet/mellanox/mlx5/core/health.c
> index d685122d9ff7..c07f3154437c 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/health.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/health.c
> @@ -572,7 +572,7 @@ mlx5_fw_fatal_reporter_dump(struct
> devlink_health_reporter *reporter,
>  		return -ENOMEM;
>  	err = mlx5_crdump_collect(dev, cr_data);
>  	if (err)
> -		return err;
> +		goto free_data;
>  
>  	if (priv_ctx) {
>  		struct mlx5_fw_reporter_ctx *fw_reporter_ctx =
> priv_ctx;
diff mbox series

Patch

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/health.c b/drivers/net/ethernet/mellanox/mlx5/core/health.c
index d685122d9ff7..c07f3154437c 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/health.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/health.c
@@ -572,7 +572,7 @@  mlx5_fw_fatal_reporter_dump(struct devlink_health_reporter *reporter,
 		return -ENOMEM;
 	err = mlx5_crdump_collect(dev, cr_data);
 	if (err)
-		return err;
+		goto free_data;
 
 	if (priv_ctx) {
 		struct mlx5_fw_reporter_ctx *fw_reporter_ctx = priv_ctx;