aboutsummaryrefslogtreecommitdiffstats
path: root/fs/gfs2/ops_fstype.c
diff options
context:
space:
mode:
authorSteven Whitehouse <swhiteho@redhat.com>2010-01-25 11:20:19 +0000
committerSteven Whitehouse <swhiteho@redhat.com>2010-02-03 09:47:04 +0000
commite402746a945ceb9d0486a8e3d5917c9228fa4404 (patch)
treec2e6c4d619c1cf35e97b16a9849517871c15d97b /fs/gfs2/ops_fstype.c
parent1a45dcfe2525e9432cb4aba461d4994fc2befe42 (diff)
downloadkernel_samsung_smdk4412-e402746a945ceb9d0486a8e3d5917c9228fa4404.zip
kernel_samsung_smdk4412-e402746a945ceb9d0486a8e3d5917c9228fa4404.tar.gz
kernel_samsung_smdk4412-e402746a945ceb9d0486a8e3d5917c9228fa4404.tar.bz2
GFS2: Wait for unlock completion on umount
This patch adds a wait on umount between the point at which we dispose of all glocks and the point at which we unmount the lock protocol. This ensures that we've received all the replies to our unlock requests before we stop the locking. Signed-off-by: Steven Whitehouse <swhiteho@redhat.com> Reported-by: Fabio M. Di Nitto <fdinitto@redhat.com>
Diffstat (limited to 'fs/gfs2/ops_fstype.c')
-rw-r--r--fs/gfs2/ops_fstype.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/gfs2/ops_fstype.c b/fs/gfs2/ops_fstype.c
index edfee24..9390fc7 100644
--- a/fs/gfs2/ops_fstype.c
+++ b/fs/gfs2/ops_fstype.c
@@ -82,6 +82,8 @@ static struct gfs2_sbd *init_sbd(struct super_block *sb)
gfs2_tune_init(&sdp->sd_tune);
+ init_waitqueue_head(&sdp->sd_glock_wait);
+ atomic_set(&sdp->sd_glock_disposal, 0);
spin_lock_init(&sdp->sd_statfs_spin);
spin_lock_init(&sdp->sd_rindex_spin);