drm/exynos: Fix double locks at PM resume
authorTakashi Iwai <tiwai@suse.de>
Fri, 9 May 2014 06:14:15 +0000 (08:14 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 2 Jun 2014 07:57:29 +0000 (09:57 +0200)
The recent commit [3ea87855: drm/helper: lock all around force mode
restore] introduced drm_modeset_lock_all() in
drm_helper_resume_force_mode() itself, while exynos driver takes this
lock before calling it.  Move the function call outside the lock for
avoiding a deadlock.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/exynos/exynos_drm_drv.c

index 2d27ba23a6a8ef17f39f45b903254ef3679be59c..79410b0c4bbfe3d549644a94b7c4af7faaff787e 100644 (file)
@@ -183,9 +183,9 @@ static int exynos_drm_resume(struct drm_device *dev)
                if (connector->funcs->dpms)
                        connector->funcs->dpms(connector, connector->dpms);
        }
+       drm_modeset_unlock_all(dev);
 
        drm_helper_resume_force_mode(dev);
-       drm_modeset_unlock_all(dev);
 
        return 0;
 }