summaryrefslogtreecommitdiffstats
path: root/fs/gfs2/util.c
diff options
context:
space:
mode:
authorSteven Whitehouse2013-02-13 13:21:40 +0100
committerSteven Whitehouse2013-02-13 13:21:40 +0100
commitfd95e81cb1c74c9acd2356821faa9f24c2fec365 (patch)
treec042403ac12c38a9dc74a59d63bf5e19639e794d /fs/gfs2/util.c
parentGFS2: Get a block reservation before resizing a file (diff)
downloadkernel-qcow2-linux-fd95e81cb1c74c9acd2356821faa9f24c2fec365.tar.gz
kernel-qcow2-linux-fd95e81cb1c74c9acd2356821faa9f24c2fec365.tar.xz
kernel-qcow2-linux-fd95e81cb1c74c9acd2356821faa9f24c2fec365.zip
GFS2: Reinstate withdraw ack system
This patch reinstates the ack system which withdraw should be using. It appears to have been accidentally forgotten when the lock module was merged into GFS2, due to two different sysfs files having the same name. Reported-by: David Teigland <teigland@redhat.com> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/util.c')
-rw-r--r--fs/gfs2/util.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/gfs2/util.c b/fs/gfs2/util.c
index f00d7c5744f6..6402fb69d71b 100644
--- a/fs/gfs2/util.c
+++ b/fs/gfs2/util.c
@@ -54,6 +54,9 @@ int gfs2_lm_withdraw(struct gfs2_sbd *sdp, char *fmt, ...)
kobject_uevent(&sdp->sd_kobj, KOBJ_OFFLINE);
+ if (!strcmp(sdp->sd_lockstruct.ls_ops->lm_proto_name, "lock_dlm"))
+ wait_for_completion(&sdp->sd_wdack);
+
if (lm->lm_unmount) {
fs_err(sdp, "telling LM to unmount\n");
lm->lm_unmount(sdp);