[PATCH] drm/exynos: fix plane-framebuffer linkage
Daniel Vetter
daniel at ffwll.ch
Wed Sep 17 23:39:46 PDT 2014
On Wed, Sep 17, 2014 at 6:41 PM, Daniel Drake <drake at endlessm.com> wrote:
> 2. drm_mode_rmfb then calls drm_framebuffer_remove, which calls
> drm_mode_set_config_internal() in order to turn off the CRTC, dropping
> another reference in the process.
> if (tmp->old_fb)
> drm_framebuffer_unreference(tmp->old_fb);
>
> 3. drm_framebuffer_remove calls drm_plane_force_disable() which drops
> another reference:
> /* disconnect the plane from the fb and crtc: */
> __drm_framebuffer_unreference(old_fb);
If 3. here is about the primary plane then this won't happen, since
the primary plane pointer&reference has already been cleared in step
2.
And even if their would be a bug in here, you _certainly_ should not
try to paper over this in your driver, but instead fix up the
refcounting done in the drm core.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
More information about the dri-devel
mailing list