diff --git a/fs/gfs2/lm_interface.h b/fs/gfs2/lm_interface.h
index 75835e0..148136a 100644
--- a/fs/gfs2/lm_interface.h
+++ b/fs/gfs2/lm_interface.h
@@ -211,7 +211,6 @@
 
 	int (*lm_hold_lvb) (lm_lock_t *lock, char **lvbp);
 	void (*lm_unhold_lvb) (lm_lock_t *lock, char *lvb);
-	void (*lm_sync_lvb) (lm_lock_t *lock, char *lvb);
 
 	/*
 	 * Posix Lock oriented operations
diff --git a/fs/gfs2/locking/dlm/lock.c b/fs/gfs2/locking/dlm/lock.c
index dceea41..e4359b1 100644
--- a/fs/gfs2/locking/dlm/lock.c
+++ b/fs/gfs2/locking/dlm/lock.c
@@ -490,23 +490,6 @@
 	gdlm_del_lvb(lp);
 }
 
-void gdlm_sync_lvb(lm_lock_t *lock, char *lvb)
-{
-	struct gdlm_lock *lp = (struct gdlm_lock *) lock;
-
-	if (lp->cur != DLM_LOCK_EX)
-		return;
-
-	init_completion(&lp->ast_wait);
-	set_bit(LFL_SYNC_LVB, &lp->flags);
-
-	lp->req = DLM_LOCK_EX;
-	lp->lkf = make_flags(lp, 0, lp->cur, lp->req);
-
-	gdlm_do_lock(lp);
-	wait_for_completion(&lp->ast_wait);
-}
-
 void gdlm_submit_delayed(struct gdlm_ls *ls)
 {
 	struct gdlm_lock *lp, *safe;
diff --git a/fs/gfs2/locking/dlm/lock_dlm.h b/fs/gfs2/locking/dlm/lock_dlm.h
index e6898d2..a4f534a 100644
--- a/fs/gfs2/locking/dlm/lock_dlm.h
+++ b/fs/gfs2/locking/dlm/lock_dlm.h
@@ -172,7 +172,6 @@
 void gdlm_cancel(lm_lock_t *);
 int gdlm_hold_lvb(lm_lock_t *, char **);
 void gdlm_unhold_lvb(lm_lock_t *, char *);
-void gdlm_sync_lvb(lm_lock_t *, char *);
 
 /* plock.c */
 
diff --git a/fs/gfs2/locking/dlm/mount.c b/fs/gfs2/locking/dlm/mount.c
index 8a1764f..832fb81 100644
--- a/fs/gfs2/locking/dlm/mount.c
+++ b/fs/gfs2/locking/dlm/mount.c
@@ -249,7 +249,6 @@
 	.lm_cancel = gdlm_cancel,
 	.lm_hold_lvb = gdlm_hold_lvb,
 	.lm_unhold_lvb = gdlm_unhold_lvb,
-	.lm_sync_lvb = gdlm_sync_lvb,
 	.lm_recovery_done = gdlm_recovery_done,
 	.lm_owner = THIS_MODULE,
 };
diff --git a/fs/gfs2/locking/nolock/main.c b/fs/gfs2/locking/nolock/main.c
index e326079..ba73997 100644
--- a/fs/gfs2/locking/nolock/main.c
+++ b/fs/gfs2/locking/nolock/main.c
@@ -162,17 +162,6 @@
 	kfree(lvb);
 }
 
-/**
- * nolock_sync_lvb - sync out the value of a lvb
- * @lock: the lock the LVB is associated with
- * @lvb: the lock value block
- *
- */
-
-static void nolock_sync_lvb(lm_lock_t *lock, char *lvb)
-{
-}
-
 static int nolock_plock_get(lm_lockspace_t *lockspace, struct lm_lockname *name,
 			    struct file *file, struct file_lock *fl)
 {
@@ -221,7 +210,6 @@
 	.lm_cancel = nolock_cancel,
 	.lm_hold_lvb = nolock_hold_lvb,
 	.lm_unhold_lvb = nolock_unhold_lvb,
-	.lm_sync_lvb = nolock_sync_lvb,
 	.lm_plock_get = nolock_plock_get,
 	.lm_plock = nolock_plock,
 	.lm_punlock = nolock_punlock,
