From: Mark Fasheh Date: Mon, 3 Dec 2007 22:06:23 +0000 (-0800) Subject: ocfs2: fix exit-while-locked bug in ocfs2_queue_orphans() X-Git-Tag: v2.6.24-rc6~57^2~3 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a86370fbb65a0a2cb21d28bf25a748f6cc04385b;p=linux-2.6 ocfs2: fix exit-while-locked bug in ocfs2_queue_orphans() We're holding the cluster lock when a failure might happen in ocfs2_dir_foreach() so it needs to be released. Signed-off-by: Mark Fasheh --- diff --git a/fs/ocfs2/journal.c b/fs/ocfs2/journal.c index f9d01e2529..7e5f7ce476 100644 --- a/fs/ocfs2/journal.c +++ b/fs/ocfs2/journal.c @@ -1277,11 +1277,12 @@ static int ocfs2_queue_orphans(struct ocfs2_super *osb, ocfs2_orphan_filldir); if (status) { mlog_errno(status); - goto out; + goto out_cluster; } *head = priv.head; +out_cluster: ocfs2_meta_unlock(orphan_dir_inode, 0); out: mutex_unlock(&orphan_dir_inode->i_mutex);