On Tue, Jun 26, 2012 at 05:12:46PM -0700, Jesse Barnes wrote:
On Wed, 27 Jun 2012 00:55:37 +0200 (CEST) Jesper Juhl jj@chaosbits.net 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@chaosbits.net
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:
return -ENODEV; }kfree(intel_plane);
@@ -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@virtuousgeek.org
Queued for -next, thanks for the patch. -Daniel