23 lines
731 B
Diff
23 lines
731 B
Diff
Index: LVM2.2.02.39/daemons/clvmd/clvmd-openais.c
|
|
===================================================================
|
|
--- LVM2.2.02.39.orig/daemons/clvmd/clvmd-openais.c
|
|
+++ LVM2.2.02.39/daemons/clvmd/clvmd-openais.c
|
|
@@ -368,7 +368,16 @@ static void _cluster_closedown(void)
|
|
DEBUGLOG("cluster_closedown\n");
|
|
unlock_all();
|
|
|
|
- dlm_release_lockspace(LOCKSPACE_NAME, lockspace, 0);
|
|
+ int r;
|
|
+ r = dlm_release_lockspace(LOCKSPACE_NAME, lockspace, 0);
|
|
+ if (r == -1) {
|
|
+ if (errno == EBUSY) {
|
|
+ syslog(LOG_ERR, "Some locks still active, close by force\n");
|
|
+ dlm_release_lockspace(LOCKSPACE_NAME, lockspace, 1);
|
|
+ } else {
|
|
+ syslog(LOG_ERR, "dlm_release_lockspace failed\n");
|
|
+ }
|
|
+ }
|
|
cpg_finalize(cpg_handle);
|
|
}
|
|
|