> -----Original Message-----
> From: [email protected] [mailto:devel-
> [email protected]] On Behalf Of Andre Bartke
> Sent: Tuesday, May 31, 2011 5:46 PM
> To: [email protected]
> Cc: [email protected]; Andre Bartke; Haiyang Zhang; linux-
> [email protected]
> Subject: [PATCH] staging/hv: Fix memory leak of storvsc_dev_add()
> 
> stor_device is not freed in storvsc_dev_add()
> causing a memory leak in case of an allocation error.
> 
> Signed-off-by: Andre Bartke <[email protected]>
> ---
>  drivers/staging/hv/storvsc.c |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/staging/hv/storvsc.c b/drivers/staging/hv/storvsc.c
> index 06cd327..92b44f4 100644
> --- a/drivers/staging/hv/storvsc.c
> +++ b/drivers/staging/hv/storvsc.c
> @@ -414,6 +414,7 @@ int storvsc_dev_add(struct hv_device *device,
>       device_info->target_id = stor_device->target_id;
> 
>  cleanup:
> +     free_stor_device(stor_device);
>       return ret;

Was this patch tested? Even the normal path falls through the cleanup label
and obviously you should not be freeing the stor_device in that case. I have 
patches queued up to cleanup some of the unnecessary labels and meaningless
return values that I will be sending soon.

Regards,

K. Y
 


_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to