From: Ville Syrjälä Date: Thu, 14 Jan 2016 13:22:09 +0000 (+0200) Subject: drm/i915: Don't leak framebuffer_references if drm_framebuffer_init() fails X-Git-Tag: v4.14-rc1~2738^2~45^2~805 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0b05e1e0c945ff4e8635890982fafa5434b262d9;p=platform%2Fkernel%2Flinux-rpi.git drm/i915: Don't leak framebuffer_references if drm_framebuffer_init() fails Don't increment obj->framebuffer_references until we know we actually managed to create the framebuffer. Signed-off-by: Ville Syrjälä Reviewed-by: Daniel Vetter Link: http://patchwork.freedesktop.org/patch/msgid/1452777736-4909-2-git-send-email-ville.syrjala@linux.intel.com --- diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 68a9857..c532c3d 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -14905,7 +14905,6 @@ static int intel_framebuffer_init(struct drm_device *dev, drm_helper_mode_fill_fb_struct(&intel_fb->base, mode_cmd); intel_fb->obj = obj; - intel_fb->obj->framebuffer_references++; ret = drm_framebuffer_init(dev, &intel_fb->base, &intel_fb_funcs); if (ret) { @@ -14913,6 +14912,8 @@ static int intel_framebuffer_init(struct drm_device *dev, return ret; } + intel_fb->obj->framebuffer_references++; + return 0; }