From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH] drm: Keep a reference to the active plane framebuffer Date: Tue, 19 Feb 2013 16:18:07 +0100 Message-ID: <1361287087-32035-1-git-send-email-thierry.reding@avionic-design.de> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.126.187]) by gabe.freedesktop.org (Postfix) with ESMTP id 64C29E5CD5 for ; Tue, 19 Feb 2013 07:18:13 -0800 (PST) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: Dave Airlie Cc: Daniel Vetter , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org When updating a plane, the DRM core always sets the plane's framebuffer to NULL. This in turn will cause the reference count on the plane's active framebuffer to become unbalanced because on the next update, the old framebuffer will be NULL. Signed-off-by: Thierry Reding --- drivers/gpu/drm/drm_crtc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index d06ec7e..b235fa0 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c @@ -1984,9 +1984,9 @@ int drm_mode_setplane(struct drm_device *dev, void *data, plane_req->src_w, plane_req->src_h); if (!ret) { old_fb = plane->fb; + plane->fb = fb; fb = NULL; plane->crtc = crtc; - plane->fb = fb; } drm_modeset_unlock_all(dev); -- 1.8.1.2