Re: [PATCH] drm/i915/sprite: Fix mem leak in intel_plane_init()

From: Jesse Barnes
Date: Tue Jun 26 2012 - 20:12:51 EST


On Wed, 27 Jun 2012 00:55:37 +0200 (CEST)
Jesper Juhl <jj@xxxxxxxxxxxxx> wrote:

> If we ever hit the default case in the switch statement we'll return
> from the function without freeing the memory we just allocated to
> 'intel_plane' (but that has not been used).
>
> This patch gets rid of the leak by freeing the memory just before we
> return.
>
> Signed-off-by: Jesper Juhl <jj@xxxxxxxxxxxxx>
> ---
> drivers/gpu/drm/i915/intel_sprite.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
> index 2a20fb0..c8851ba 100644
> --- a/drivers/gpu/drm/i915/intel_sprite.c
> +++ b/drivers/gpu/drm/i915/intel_sprite.c
> @@ -685,6 +685,7 @@ intel_plane_init(struct drm_device *dev, enum pipe pipe)
> break;
>
> default:
> + kfree(intel_plane);
> return -ENODEV;
> }
>
> @@ -699,4 +700,3 @@ intel_plane_init(struct drm_device *dev, enum pipe pipe)
>
> return ret;
> }

Yeah, looks fine. I just fixed the same thing in a local tree (though
by using a goto since I added another path that could fail).

Reviewed-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>

--
Jesse Barnes, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/