diff options
author | Daniel Vetter <[email protected]> | 2013-02-15 21:21:37 +0100 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2013-02-20 08:47:54 +1000 |
commit | 35f8badc1cf652381fa3f82c1fbea39f4dbe87fd (patch) | |
tree | c2a9a4df9864daf8647bcab7fa5b469da2034440 | |
parent | 196e077dc165a307efbd9e7569f81bbdbcf18f65 (diff) |
drm: Don't set the plane->fb to NULL on successfull set_plane
We need to clear the local variable to get the refcounting right
(since the reference drm_mode_setplane holds is transferred to the
plane->fb pointer). But should be done _after_ we update the pointer.
Breakage introduced in
commit 6c2a75325c800de286166c693e0cd33c3a1c5ec8
Author: Daniel Vetter <[email protected]>
Date: Tue Dec 11 00:59:24 2012 +0100
drm: refcounting for sprite framebuffers
Reported-by: Jesse Barnes <[email protected]>
Cc: Rob Clark <[email protected]>
Reviewed-by: Jesse Barnes <[email protected]>
Reviewed-by: Ville Syrjälä <[email protected]>
Reviewed-by: Thierry Reding <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
-rw-r--r-- | drivers/gpu/drm/drm_crtc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index f17077307c65..e7471b0880b7 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c @@ -1996,9 +1996,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; - fb = NULL; plane->crtc = crtc; plane->fb = fb; + fb = NULL; } drm_modeset_unlock_all(dev); |