Commit e86fa21b authored by Chris Wilson's avatar Chris Wilson Committed by Dave Airlie

drm: Restore lost drm_framebuffer_unreference in drm_mode_page_flip_ioctl

Commit 43968d7b ("drm: Extract drm_plane.[hc]") was not the simple
cut'n'paste we presumed, somehow it introduced a leak of the page flip
target's framebuffer.

Fixes: 43968d7b ("drm: Extract drm_plane.[hc]")
Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Cc: Daniel Vetter <daniel.vetter@intel.com>
Cc: Sean Paul <seanpaul@chromium.org>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20160928222500.11827-1-chris@chris-wilson.co.ukSigned-off-by: default avatarDave Airlie <airlied@redhat.com>
parent f5dce665
...@@ -898,6 +898,8 @@ int drm_mode_page_flip_ioctl(struct drm_device *dev, ...@@ -898,6 +898,8 @@ int drm_mode_page_flip_ioctl(struct drm_device *dev,
out: out:
if (ret && crtc->funcs->page_flip_target) if (ret && crtc->funcs->page_flip_target)
drm_crtc_vblank_put(crtc); drm_crtc_vblank_put(crtc);
if (fb)
drm_framebuffer_unreference(fb);
if (crtc->primary->old_fb) if (crtc->primary->old_fb)
drm_framebuffer_unreference(crtc->primary->old_fb); drm_framebuffer_unreference(crtc->primary->old_fb);
crtc->primary->old_fb = NULL; crtc->primary->old_fb = NULL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment