[lustre-devel] [patch] staging: lustre/ptlrpc: small leak on allocation failure

Dilger, Andreas andreas.dilger at intel.com
Fri Nov 25 15:16:48 PST 2016


On Nov 24, 2016, at 04:12, Dan Carpenter <dan.carpenter at oracle.com> wrote:
> 
> We should free "desc" before returning NULL.
> 
> Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>

Reviewed-by: Andreas Dilger <andreas.dilger at intel.com>

> diff --git a/drivers/staging/lustre/lustre/ptlrpc/client.c b/drivers/staging/lustre/lustre/ptlrpc/client.c
> index ac959ef..8047413 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/client.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/client.c
> @@ -128,12 +128,12 @@ struct ptlrpc_bulk_desc *ptlrpc_new_bulk(unsigned int nfrags,
> 		GET_KIOV(desc) = kcalloc(nfrags, sizeof(*GET_KIOV(desc)),
> 					 GFP_NOFS);
> 		if (!GET_KIOV(desc))
> -			goto out;
> +			goto free_desc;
> 	} else {
> 		GET_KVEC(desc) = kcalloc(nfrags, sizeof(*GET_KVEC(desc)),
> 					 GFP_NOFS);
> 		if (!GET_KVEC(desc))
> -			goto out;
> +			goto free_desc;
> 	}
> 
> 	spin_lock_init(&desc->bd_lock);
> @@ -154,7 +154,8 @@ struct ptlrpc_bulk_desc *ptlrpc_new_bulk(unsigned int nfrags,
> 		LNetInvalidateHandle(&desc->bd_mds[i]);
> 
> 	return desc;
> -out:
> +free_desc:
> +	kfree(desc);
> 	return NULL;
> }
> 
> _______________________________________________
> lustre-devel mailing list
> lustre-devel at lists.lustre.org
> http://lists.lustre.org/listinfo.cgi/lustre-devel-lustre.org



More information about the lustre-devel mailing list