OpenCloudOS-Kernel/fs/ocfs2/dlm
Sunil Mushran 66effd3c68 ocfs2/dlm: Do not migrate resource to a node that is leaving the domain
During dlm domain shutdown, o2dlm has to free all the lock resources. Ones that
have no locks and references are freed. Ones that have locks and/or references
are migrated to another node.

The first task in migration is finding a target. Currently we scan the lock
resource and find one node that either has a lock or a reference. This is not
very efficient in a parallel umount case as we might end up migrating the
lock resource to a node which itself may have to migrate it to a third node.

The patch scans the dlm->exit_domain_map to ensure the target node is not
leaving the domain. If no valid target node is found, o2dlm does not migrate
the resource but instead waits for the unlock and deref messages that will
allow it to free the resource.

Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com>
Signed-off-by: Joel Becker <jlbec@evilplan.org>
2011-05-25 21:05:22 -07:00
..
Makefile fs: change to new flag variable 2011-03-17 14:02:57 +01:00
dlmapi.h ocfs2/trivial: Remove trailing whitespaces 2010-01-25 19:20:51 -08:00
dlmast.c ocfs2/dlm: Cleanup mlogs in dlmthread.c, dlmast.c and dlmdomain.c 2010-12-16 00:46:05 -08:00
dlmcommon.h ocfs2/dlm: Add new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG 2011-05-25 21:05:15 -07:00
dlmconvert.c ocfs2: Remove ENTRY from masklog. 2011-02-21 11:10:44 +08:00
dlmconvert.h [PATCH] OCFS2: The Second Oracle Cluster Filesystem 2006-01-03 11:45:47 -08:00
dlmdebug.c ocfs2/dlm: Add new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG 2011-05-25 21:05:15 -07:00
dlmdebug.h ocfs2/dlm: Cleanup dlmdebug.c 2010-12-22 18:34:44 -08:00
dlmdomain.c ocfs2/dlm: Do not migrate resource to a node that is leaving the domain 2011-05-25 21:05:22 -07:00
dlmdomain.h [PATCH] OCFS2: The Second Oracle Cluster Filesystem 2006-01-03 11:45:47 -08:00
dlmlock.c ocfs2: Remove ENTRY from masklog. 2011-02-21 11:10:44 +08:00
dlmmaster.c ocfs2/dlm: Do not migrate resource to a node that is leaving the domain 2011-05-25 21:05:22 -07:00
dlmrecovery.c ocfs2/dlm: Add new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG 2011-05-25 21:05:15 -07:00
dlmthread.c ocfs2/dlm: Cleanup mlogs in dlmthread.c, dlmast.c and dlmdomain.c 2010-12-16 00:46:05 -08:00
dlmunlock.c ocfs2: Remove ENTRY from masklog. 2011-02-21 11:10:44 +08:00
dlmver.c ocfs2: bump version number 2008-01-25 15:05:46 -08:00
dlmver.h [PATCH] OCFS2: The Second Oracle Cluster Filesystem 2006-01-03 11:45:47 -08:00