From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bob Peterson Date: Fri, 4 Dec 2015 13:59:58 -0500 (EST) Subject: [Cluster-devel] [GFS2 PATCH] GFS2: Always use iopen glock for gl_deletes In-Reply-To: <913655523.28271222.1449255550103.JavaMail.zimbra@redhat.com> Message-ID: <154001859.28271892.1449255598420.JavaMail.zimbra@redhat.com> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Hi, Before this patch, when function try_rgrp_unlink queued a glock for delete_work to reclaim the space, it used the inode glock to do so. That's different from the iopen callback which uses the iopen glock for the same purpose. We should be consistent and always use the iopen glock. This may also save us reference counting problems with the inode glock, since clear_glock does an extra glock_put() for the inode glock. Regards, Bob Peterson Red Hat File Systems --- Signed-off-by: Bob Peterson diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c index 42ac3bb..00b2f22 100644 --- a/fs/gfs2/rgrp.c +++ b/fs/gfs2/rgrp.c @@ -1789,7 +1789,7 @@ static void try_rgrp_unlink(struct gfs2_rgrpd *rgd, u64 *last_unlinked, u64 skip continue; *last_unlinked = block; - error = gfs2_glock_get(sdp, block, &gfs2_inode_glops, CREATE, &gl); + error = gfs2_glock_get(sdp, block, &gfs2_iopen_glops, CREATE, &gl); if (error) continue;