diff options
author | Maarten Lankhorst <maarten.lankhorst@canonical.com> | 2014-05-01 13:58:05 +0200 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2014-05-02 16:24:59 +1000 |
commit | 806cbc5026933a781b66adecf6d1658fde9138e6 (patch) | |
tree | f23fcdce03b144f01be69e6677e4f42bc0ae096b | |
parent | ce23b234d157f1dfea098fcc77cb5b6887d10df2 (diff) | |
download | op-kernel-dev-806cbc5026933a781b66adecf6d1658fde9138e6.zip op-kernel-dev-806cbc5026933a781b66adecf6d1658fde9138e6.tar.gz |
drm/nouveau: fix another lock unbalance in nouveau_crtc_page_flip
Fixes a regression introduced by 060810d7abaabca "drm/nouveau: fix locking
issues in page flipping paths". chan->cli->mutex is unlocked a second time
in the fail_unreserve path, fix this by moving mutex_unlock down.
Cc: stable@vger.kernel.org # v3.11+
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_display.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_display.c b/drivers/gpu/drm/nouveau/nouveau_display.c index b1547b0..72e15713 100644 --- a/drivers/gpu/drm/nouveau/nouveau_display.c +++ b/drivers/gpu/drm/nouveau/nouveau_display.c @@ -764,9 +764,9 @@ nouveau_crtc_page_flip(struct drm_crtc *crtc, struct drm_framebuffer *fb, } ret = nouveau_page_flip_emit(chan, old_bo, new_bo, s, &fence); - mutex_unlock(&chan->cli->mutex); if (ret) goto fail_unreserve; + mutex_unlock(&chan->cli->mutex); /* Update the crtc struct and cleanup */ crtc->fb = fb; |