aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2016-06-15 06:24:26 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2016-06-15 11:25:36 -0400
commit7deef7f1ae5d0bf98c1ec9eb4bc87b29478c2adb (patch)
tree5c709e921a4e1eb76a684a22ef274e547d16ae0f /drivers/gpu
parent723c3e553051bcb82eb8d8962c04171040068e83 (diff)
drm/atomic-helpers: Clear up cleanup_done a bit
It's not obvious at first sight that this is a fastpath, make that clearer with a goto. Fallout from a discussion with Liviu on irc. v2: Drop bogus hunks that crept in. v3: Make it compile. Cc: Liviu.Dudau@arm.com Acked-by: Liviu.Dudau@arm.com Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: http://patchwork.freedesktop.org/patch/msgid/1465986266-2831-1-git-send-email-daniel.vetter@ffwll.ch
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/drm_atomic_helper.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
index 716aa535eb98..de7fddce3cef 100644
--- a/drivers/gpu/drm/drm_atomic_helper.c
+++ b/drivers/gpu/drm/drm_atomic_helper.c
@@ -1579,11 +1579,8 @@ void drm_atomic_helper_commit_cleanup_done(struct drm_atomic_state *state)
1579 /* commit_list borrows our reference, need to remove before we 1579 /* commit_list borrows our reference, need to remove before we
1580 * clean up our drm_atomic_state. But only after it actually 1580 * clean up our drm_atomic_state. But only after it actually
1581 * completed, otherwise subsequent commits won't stall properly. */ 1581 * completed, otherwise subsequent commits won't stall properly. */
1582 if (try_wait_for_completion(&commit->flip_done)) { 1582 if (try_wait_for_completion(&commit->flip_done))
1583 list_del(&commit->commit_entry); 1583 goto del_commit;
1584 spin_unlock(&crtc->commit_lock);
1585 continue;
1586 }
1587 1584
1588 spin_unlock(&crtc->commit_lock); 1585 spin_unlock(&crtc->commit_lock);
1589 1586
@@ -1597,6 +1594,7 @@ void drm_atomic_helper_commit_cleanup_done(struct drm_atomic_state *state)
1597 crtc->base.id, crtc->name); 1594 crtc->base.id, crtc->name);
1598 1595
1599 spin_lock(&crtc->commit_lock); 1596 spin_lock(&crtc->commit_lock);
1597del_commit:
1600 list_del(&commit->commit_entry); 1598 list_del(&commit->commit_entry);
1601 spin_unlock(&crtc->commit_lock); 1599 spin_unlock(&crtc->commit_lock);
1602 } 1600 }