Skip to content

Commit d103afe

Browse files
xuejiufeisashalevin
authored andcommitted
ocfs2/dlm: clear refmap bit of recovery lock while doing local recovery cleanup
commit c95a518 upstream. When recovery master down, dlm_do_local_recovery_cleanup() only remove the $RECOVERY lock owned by dead node, but do not clear the refmap bit. Which will make umount thread falling in dead loop migrating $RECOVERY to the dead node. Signed-off-by: xuejiufei <[email protected]> Reviewed-by: Joseph Qi <[email protected]> Cc: Mark Fasheh <[email protected]> Cc: Joel Becker <[email protected]> Cc: Junxiao Bi <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]> Signed-off-by: Ben Hutchings <[email protected]> Signed-off-by: Sasha Levin <[email protected]>
1 parent f47d67b commit d103afe

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

fs/ocfs2/dlm/dlmrecovery.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2329,6 +2329,8 @@ static void dlm_do_local_recovery_cleanup(struct dlm_ctxt *dlm, u8 dead_node)
23292329
break;
23302330
}
23312331
}
2332+
dlm_lockres_clear_refmap_bit(dlm, res,
2333+
dead_node);
23322334
spin_unlock(&res->spinlock);
23332335
continue;
23342336
}

0 commit comments

Comments
 (0)