From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: [PATCH] drm/nouveau: fix another lock unbalance in nouveau_crtc_page_flip Date: Thu, 01 May 2014 14:20:27 +0200 Message-ID: <53623C0B.7080906@canonical.com> References: <536236CD.8040806@canonical.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: Received: from youngberry.canonical.com (youngberry.canonical.com [91.189.89.112]) by gabe.freedesktop.org (Postfix) with ESMTP id D8D516E320 for ; Thu, 1 May 2014 05:20:28 -0700 (PDT) In-Reply-To: <536236CD.8040806@canonical.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: "dri-devel@lists.freedesktop.org" , Ben Skeggs List-Id: dri-devel@lists.freedesktop.org op 01-05-14 13:58, Maarten Lankhorst schreef: > 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+ > --- > diff --git a/drivers/gpu/drm/nouveau/nouveau_display.c b/drivers/gpu/drm/nouveau/nouveau_display.c > index 24011596af43..5524a3705224 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_display.c > +++ b/drivers/gpu/drm/nouveau/nouveau_display.c > @@ -762,9 +762,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; > I had a feeling I missed something here.. Signed-off-by: Maarten Lankhorst