diff options
author | Sunil Mushran <sunil.mushran@oracle.com> | 2008-12-16 18:49:21 -0500 |
---|---|---|
committer | Mark Fasheh <mfasheh@suse.com> | 2009-01-05 11:40:35 -0500 |
commit | d4f7e650e55af6b235871126f747da88600e8040 (patch) | |
tree | 77fb97d3195c0910b9741afbf23fee7ce6ef65b3 /fs/ocfs2/dlm | |
parent | 57dff2676eb68d805883a2204faaa5339ac44e03 (diff) |
ocfs2/dlm: Hold off sending lockres drop ref message while lockres is migrating
During lockres purge, o2dlm sends a drop reference message to the lockres
master. This patch delays the message if the lockres is being migrated.
Fixes oss bugzilla#1012
http://oss.oracle.com/bugzilla/show_bug.cgi?id=1012
Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com>
Signed-off-by: Mark Fasheh <mfasheh@suse.com>
Diffstat (limited to 'fs/ocfs2/dlm')
-rw-r--r-- | fs/ocfs2/dlm/dlmthread.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ocfs2/dlm/dlmthread.c b/fs/ocfs2/dlm/dlmthread.c index 4060bb328bc8..d1295203029f 100644 --- a/fs/ocfs2/dlm/dlmthread.c +++ b/fs/ocfs2/dlm/dlmthread.c | |||
@@ -181,7 +181,8 @@ static int dlm_purge_lockres(struct dlm_ctxt *dlm, | |||
181 | 181 | ||
182 | spin_lock(&res->spinlock); | 182 | spin_lock(&res->spinlock); |
183 | /* This ensures that clear refmap is sent after the set */ | 183 | /* This ensures that clear refmap is sent after the set */ |
184 | __dlm_wait_on_lockres_flags(res, DLM_LOCK_RES_SETREF_INPROG); | 184 | __dlm_wait_on_lockres_flags(res, (DLM_LOCK_RES_SETREF_INPROG | |
185 | DLM_LOCK_RES_MIGRATING)); | ||
185 | spin_unlock(&res->spinlock); | 186 | spin_unlock(&res->spinlock); |
186 | 187 | ||
187 | /* clear our bit from the master's refmap, ignore errors */ | 188 | /* clear our bit from the master's refmap, ignore errors */ |