From: Michel Dänzer <[email protected]>

Fixes crash when trying to unload the amdgpu module before the fbdev
framebuffer was initialized, which can happen since the DRM fbdev helper
code supports deferred setup.

Signed-off-by: Michel Dänzer <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c
index 9afa9c097e1f..4136996d77ef 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c
@@ -303,10 +303,10 @@ static int amdgpu_fbdev_destroy(struct drm_device *dev, 
struct amdgpu_fbdev *rfb
        if (rfb->obj) {
                amdgpufb_destroy_pinned_object(rfb->obj);
                rfb->obj = NULL;
+               drm_framebuffer_unregister_private(&rfb->base);
+               drm_framebuffer_cleanup(&rfb->base);
        }
        drm_fb_helper_fini(&rfbdev->helper);
-       drm_framebuffer_unregister_private(&rfb->base);
-       drm_framebuffer_cleanup(&rfb->base);
 
        return 0;
 }
-- 
2.14.1

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to