From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1764422AbYAUKY0 (ORCPT ); Mon, 21 Jan 2008 05:24:26 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1760310AbYAUKDh (ORCPT ); Mon, 21 Jan 2008 05:03:37 -0500 Received: from mx1.redhat.com ([66.187.233.31]:35841 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1760170AbYAUKD1 (ORCPT ); Mon, 21 Jan 2008 05:03:27 -0500 From: swhiteho@redhat.com To: linux-kernel@vger.kernel.org, cluster-devel@redhat.com Cc: Bob Peterson , Steven Whitehouse Subject: [PATCH 57/58] [GFS2] Lockup on error Date: Mon, 21 Jan 2008 09:22:15 +0000 Message-Id: <12009074392527-git-send-email-swhiteho@redhat.com> X-Mailer: git-send-email 1.5.1.2 In-Reply-To: <1200907438887-git-send-email-swhiteho@redhat.com> References: <1200907336293-git-send-email-swhiteho@redhat.com> <12009073443813-git-send-email-swhiteho@redhat.com> <12009073453549-git-send-email-swhiteho@redhat.com> <1200907348435-git-send-email-swhiteho@redhat.com> <12009073492811-git-send-email-swhiteho@redhat.com> <12009073512300-git-send-email-swhiteho@redhat.com> <12009073531216-git-send-email-swhiteho@redhat.com> <12009073542596-git-send-email-swhiteho@redhat.com> <1200907356883-git-send-email-swhiteho@redhat.com> <12009073571991-git-send-email-swhiteho@redhat.com> <12009073591688-git-send-email-swhiteho@redhat.com> <12009073611695-git-send-email-swhiteho@redhat.com> <1200907362266-git-send-email-swhiteho@redhat.com> <12009073642512-git-send-email-swhiteho@redhat.com> <12009073662309-git-send-email-swhiteho@redhat.com> <12009073671755-git-send-email-swhiteho@redhat.com> <12009073698-git-send-email-swhiteho@redhat.com> <12009073701982-git-send-email-swhiteho@redhat.com> <12009073722253-git-send-email-swhiteho@redhat.com> <1200907374616-git-send-email-swhiteho@redhat.com> <12009073753723-git-send-email-swhiteho@redhat.com> <12009073771883-git-send-email-swhiteho@redhat.com> <1200907378664-git-send-email-swhiteho@redhat.com> <12009073803732-git-send-email-swhiteho@redhat.com> <12009073823161-git-send-email-swhiteho@redhat.com> <12009073841692-git-send-email-swhiteho@redhat.com> <12009073862261-git-send-email-swhiteho@redhat.com> <12009073883125-git-send-email-swhiteho@redhat.com> <12009073891848-git-send-email-swhiteho@redhat.com> <12009073913676-git-send-email-swhiteho@redhat.com> <12009073933630-git-send-email-swhiteho@redhat.com> <12009073953412-git-send-email-swhiteho@redhat.com> <1200907397123-git-send-email-swhiteho@redhat.com> <12009073981159-git-send-email-swhiteho@redhat.com> <12009074002775-git-send-email-swhiteho@redhat.com> <12009074021586-git-send-email-swhiteho@redhat.com> <12009074032614-git-send-email-swhiteho@redhat.com> <1200907405414-git-send-email-swhiteho@redhat.com> <12009074074196-git-send-email-swhiteho@redhat.com> <12009074082286-git-send-email-swhiteho@redhat.com> <12009074103982-git-send-email-swhiteho@redhat.com> <12009074121930-git-send-email-swhiteho@redhat.com> <12009074142128-git-send-email-swhiteho@redhat.com> <12009074163163-git-send-email-swhiteho@redhat.com> <1200907417194-git-send-email-swhiteho@redhat.com> <12009074192015-git-send-email-swhiteho@redhat.com> <12009074213460-git-send-email-swhiteho@redhat.com> <12009074221447-git-send-email-swhiteho@redhat.com> <12009074243427-git-send-email-swhiteho@redhat.com> <12009074263736-git-send-email-swhiteho@redhat.com> <12009074271575-git-send-email-swhiteho@redhat.com> <12009074291130-git-send-email-swhiteho@redhat.com> <12009074312371-git-send-email-swhiteho@redhat.com> <12009074321081-git-send-email-swhiteho@redhat.com> <12009074341030-git-send-email-swhiteho@redhat.com> <12009074362909-git-send-email-swhiteho@redhat.com> <1200907438887-git-send-email-swhiteho@redhat.com> Message-Id: <7244134b8007d7ec8f2a93d039a3bb6720e2466f.1200905287.git.swhiteho@redhat.com> In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Bob Peterson I spotted this bug while I was digging around. Looks like it could cause a lockup in some rare error condition. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/inode.c b/fs/gfs2/inode.c index c84764a..728d316 100644 --- a/fs/gfs2/inode.c +++ b/fs/gfs2/inode.c @@ -860,7 +860,7 @@ static int link_dinode(struct gfs2_inode *dip, const struct qstr *name, error = alloc_required = gfs2_diradd_alloc_required(&dip->i_inode, name); if (alloc_required < 0) - goto fail; + goto fail_quota_locks; if (alloc_required) { error = gfs2_quota_check(dip, dip->i_inode.i_uid, dip->i_inode.i_gid); if (error) -- 1.5.1.2