search for: drm_framebuffer_unregister_priv

Displaying 11 results from an estimated 11 matches for "drm_framebuffer_unregister_priv".

2016 Jun 01
2
[PATCH 9/9] drm: Turn off crtc before tearing down its data structure
...m. In fact there are very few > drivers that call drm_framebuffer_remove(): tegra, msm, exynos, omapdrm > and i915 (since Imre Deak's 9d6612516da0). > > Should we add a WARN to prevent this? How about WARN_ON(crtc->enabled) > in drm_crtc_cleanup()? > > Also, i915 calls drm_framebuffer_unregister_private() before it calls > drm_framebuffer_remove(). This ordering has the unfortunate side effect > that the drm_framebuffer has ID 0 in log messages emitted by > drm_framebuffer_remove(): > > [ 39.680874] [drm:drm_mode_object_unreference] OBJ ID: 0 (3) > [ 39.680878] [drm:drm_m...
2016 Jun 03
1
[PATCH 9/9] drm: Turn off crtc before tearing down its data structure
...mebuffer_remove(): tegra, msm, exynos, omapdrm > > > and i915 (since Imre Deak's 9d6612516da0). > > > > > > Should we add a WARN to prevent this? How about WARN_ON(crtc->enabled) > > > in drm_crtc_cleanup()? > > > > > > Also, i915 calls drm_framebuffer_unregister_private() before it calls > > > drm_framebuffer_remove(). This ordering has the unfortunate side effect > > > that the drm_framebuffer has ID 0 in log messages emitted by > > > drm_framebuffer_remove(): > > > > > > [ 39.680874] [drm:drm_mode_object_unrefer...
2016 Jun 03
0
[PATCH 9/9] drm: Turn off crtc before tearing down its data structure
...> drivers that call drm_framebuffer_remove(): tegra, msm, exynos, omapdrm > > and i915 (since Imre Deak's 9d6612516da0). > > > > Should we add a WARN to prevent this? How about WARN_ON(crtc->enabled) > > in drm_crtc_cleanup()? > > > > Also, i915 calls drm_framebuffer_unregister_private() before it calls > > drm_framebuffer_remove(). This ordering has the unfortunate side effect > > that the drm_framebuffer has ID 0 in log messages emitted by > > drm_framebuffer_remove(): > > > > [ 39.680874] [drm:drm_mode_object_unreference] OBJ ID: 0 (3) >...
2016 May 25
2
[PATCH 9/9] drm: Turn off crtc before tearing down its data structure
On Wed, May 25, 2016 at 12:51 PM, Lukas Wunner <lukas at wunner.de> wrote: > > On Tue, May 24, 2016 at 11:30:42PM +0200, Daniel Vetter wrote: >> On Tue, May 24, 2016 at 06:03:27PM +0200, Lukas Wunner wrote: >> > When a drm_crtc structure is destroyed with drm_crtc_cleanup(), the DRM >> > core does not turn off the crtc first and neither do the drivers. With
2012 Dec 12
43
[PATCH 00/37] [RFC] revamped modeset locking
Hi all, First thing first: It works, I now no longer have a few dropped frames every 10s on my testbox here with the pageflip i-g-t tests. Random notes: - New design has per-crtc locks to protect the crtc input-side (pageflip, cursor) for r/w and the output state of the crtc (mode, dpms) as read-only. It also required completely revamped fb lifecycle management, those are now refcounted
2018 Aug 10
0
[PATCH] drm/cirrus: Use drm_framebuffer_put to avoid kernel oops in clean-up
On Fri, Jul 20, 2018 at 01:27:43PM +0200, Thomas Zimmermann wrote: > In the Cirrus driver, the regular clean-up code also performs the clean-up > of a failed initialization. If the fbdev's framebuffer was not initialized, > the clean-up will fail within drm_framebuffer_unregister_private. Booting > with cirrus.bpp=16 triggers this bug. > > The framebuffer is currently stored directly within struct cirrus_fbdev. To > fix the bug, we turn it into a pointer that is only set for initialized > framebuffers. The fbdev's clean-up code skips uninitialized framebuffer...
2016 Jun 01
0
[PATCH 9/9] drm: Turn off crtc before tearing down its data structure
...eon and amdgpu have the same problem. In fact there are very few drivers that call drm_framebuffer_remove(): tegra, msm, exynos, omapdrm and i915 (since Imre Deak's 9d6612516da0). Should we add a WARN to prevent this? How about WARN_ON(crtc->enabled) in drm_crtc_cleanup()? Also, i915 calls drm_framebuffer_unregister_private() before it calls drm_framebuffer_remove(). This ordering has the unfortunate side effect that the drm_framebuffer has ID 0 in log messages emitted by drm_framebuffer_remove(): [ 39.680874] [drm:drm_mode_object_unreference] OBJ ID: 0 (3) [ 39.680878] [drm:drm_mode_object_unreference] OBJ ID...
2018 Sep 05
0
[PATCH] bochs: convert to drm_fb_helper_fbdev_setup/teardown
...amebuffer *gfb = &bochs->fb.gfb; > - > - DRM_DEBUG_DRIVER("\n"); > - > - drm_fb_helper_unregister_fbi(&bochs->fb.helper); > - > - if (gfb->obj) { > - drm_gem_object_unreference_unlocked(gfb->obj); > - gfb->obj = NULL; > - } > - > - drm_framebuffer_unregister_private(&gfb->base); > - drm_framebuffer_cleanup(&gfb->base); > - > return 0; > } > > @@ -158,41 +137,17 @@ static const struct drm_fb_helper_funcs bochs_fb_helper_funcs = { > .fb_probe = bochsfb_create, > }; > > +const struct drm_mode_config_funcs b...
2017 Aug 08
5
[PATCH libdrm] drm: Remove create_handle() drm_framebuffer "virtual".
...register_fbi(&rfbdev->helper); - if (rfb->obj) { - amdgpufb_destroy_pinned_object(rfb->obj); - rfb->obj = NULL; + if (rfb->gem_objs[0]) { + amdgpufb_destroy_pinned_object(rfb->gem_objs[0]); + rfb->gem_objs[0] = NULL; } drm_fb_helper_fini(&rfbdev->helper); - drm_framebuffer_unregister_private(&rfb->base); - drm_framebuffer_cleanup(&rfb->base); + drm_framebuffer_unregister_private(rfb); + drm_framebuffer_cleanup(rfb); return 0; } @@ -408,7 +408,7 @@ int amdgpu_fbdev_total_size(struct amdgpu_device *adev) if (!adev->mode_info.rfbdev) return 0; - robj = gem_...
2017 Aug 08
5
[PATCH libdrm] drm: Remove create_handle() drm_framebuffer "virtual".
...register_fbi(&rfbdev->helper); - if (rfb->obj) { - amdgpufb_destroy_pinned_object(rfb->obj); - rfb->obj = NULL; + if (rfb->gem_objs[0]) { + amdgpufb_destroy_pinned_object(rfb->gem_objs[0]); + rfb->gem_objs[0] = NULL; } drm_fb_helper_fini(&rfbdev->helper); - drm_framebuffer_unregister_private(&rfb->base); - drm_framebuffer_cleanup(&rfb->base); + drm_framebuffer_unregister_private(rfb); + drm_framebuffer_cleanup(rfb); return 0; } @@ -408,7 +408,7 @@ int amdgpu_fbdev_total_size(struct amdgpu_device *adev) if (!adev->mode_info.rfbdev) return 0; - robj = gem_...
2017 Aug 08
5
[PATCH libdrm] drm: Remove create_handle() drm_framebuffer "virtual".
...register_fbi(&rfbdev->helper); - if (rfb->obj) { - amdgpufb_destroy_pinned_object(rfb->obj); - rfb->obj = NULL; + if (rfb->gem_objs[0]) { + amdgpufb_destroy_pinned_object(rfb->gem_objs[0]); + rfb->gem_objs[0] = NULL; } drm_fb_helper_fini(&rfbdev->helper); - drm_framebuffer_unregister_private(&rfb->base); - drm_framebuffer_cleanup(&rfb->base); + drm_framebuffer_unregister_private(rfb); + drm_framebuffer_cleanup(rfb); return 0; } @@ -408,7 +408,7 @@ int amdgpu_fbdev_total_size(struct amdgpu_device *adev) if (!adev->mode_info.rfbdev) return 0; - robj = gem_...