aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/dlm/dlmdomain.c
diff options
context:
space:
mode:
authorSunil Mushran <sunil.mushran@oracle.com>2007-03-22 17:08:32 -0700
committerMark Fasheh <mark.fasheh@oracle.com>2007-03-26 16:51:15 -0700
commit2f5bf1f2d061dea5146aa283685ce2b00cea2f3d (patch)
treec957d5e3567146470e1b439dd56ca87b74624424 /fs/ocfs2/dlm/dlmdomain.c
parentocfs2_dlm: Fix lockres ref counting bug (diff)
downloadlinux-dev-2f5bf1f2d061dea5146aa283685ce2b00cea2f3d.tar.xz
linux-dev-2f5bf1f2d061dea5146aa283685ce2b00cea2f3d.zip
ocfs2_dlm: Check for migrateable lockres in dlm_empty_lockres()
In dlm_migrate_lockres(), we check upfront whether the lockres is a candidate for migration. This patch encapsulates that code in a separate function so that dlm_empty_lockres() can also use it during umount. This patch addresses the umount process spinning problem. Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Diffstat (limited to '')
-rw-r--r--fs/ocfs2/dlm/dlmdomain.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ocfs2/dlm/dlmdomain.c b/fs/ocfs2/dlm/dlmdomain.c
index dbbac184c261..c558442a0b44 100644
--- a/fs/ocfs2/dlm/dlmdomain.c
+++ b/fs/ocfs2/dlm/dlmdomain.c
@@ -657,6 +657,8 @@ void dlm_unregister_domain(struct dlm_ctxt *dlm)
dlm_kick_thread(dlm, NULL);
while (dlm_migrate_all_locks(dlm)) {
+ /* Give dlm_thread time to purge the lockres' */
+ msleep(500);
mlog(0, "%s: more migration to do\n", dlm->name);
}
dlm_mark_domain_leaving(dlm);