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: + kfree(intel_plane); return -ENODEV; }
@@ -699,4 +700,3 @@ intel_plane_init(struct drm_device *dev, enum pipe pipe)
return ret; } -