From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jesse Barnes Subject: Re: [PATCH] drm/i915/sprite: Fix mem leak in intel_plane_init() Date: Tue, 26 Jun 2012 17:12:46 -0700 Message-ID: <20120626171246.4c385996@jbarnes-desktop> References: Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org To: Jesper Juhl Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, David Airlie , Daniel Vetter List-Id: dri-devel@lists.freedesktop.org On Wed, 27 Jun 2012 00:55:37 +0200 (CEST) Jesper Juhl 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 > --- > 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 -- Jesse Barnes, Intel Open Source Technology Center