diff options
author | Christine Caulfield <ccaulfie@redhat.com> | 2009-02-10 11:52:40 +0000 |
---|---|---|
committer | Christine Caulfield <ccaulfie@redhat.com> | 2009-02-10 11:52:40 +0000 |
commit | 2095de1af2b82009bf862cc8237ef6cbc66c60a0 (patch) | |
tree | deb4ab63677e87b4a15db0e662c0c0ba0de94df8 /daemons | |
parent | ea0cdd28c1cdf282b535e059a2f94510c84387d9 (diff) | |
download | lvm2-2095de1af2b82009bf862cc8237ef6cbc66c60a0.tar.gz lvm2-2095de1af2b82009bf862cc8237ef6cbc66c60a0.tar.xz lvm2-2095de1af2b82009bf862cc8237ef6cbc66c60a0.zip |
Allow clvmd to start up if its lockspace already exists.
Diffstat (limited to 'daemons')
-rw-r--r-- | daemons/clvmd/clvmd-cman.c | 9 | ||||
-rw-r--r-- | daemons/clvmd/clvmd-corosync.c | 11 |
2 files changed, 15 insertions, 5 deletions
diff --git a/daemons/clvmd/clvmd-cman.c b/daemons/clvmd/clvmd-cman.c index b03f880d..a853b3bb 100644 --- a/daemons/clvmd/clvmd-cman.c +++ b/daemons/clvmd/clvmd-cman.c @@ -110,8 +110,13 @@ static int _init_cluster(void) /* Create a lockspace for LV & VG locks to live in */ lockspace = dlm_create_lockspace(LOCKSPACE_NAME, 0600); if (!lockspace) { - syslog(LOG_ERR, "Unable to create lockspace for CLVM: %m"); - return -1; + if (errno == EEXIST) { + lockspace = dlm_open_lockspace(LOCKSPACE_NAME); + } + if (!lockspace) { + syslog(LOG_ERR, "Unable to create lockspace for CLVM: %m"); + return -1; + } } dlm_ls_pthread_init(lockspace); DEBUGLOG("DLM initialisation complete\n"); diff --git a/daemons/clvmd/clvmd-corosync.c b/daemons/clvmd/clvmd-corosync.c index 61dfe4d3..5a2c137b 100644 --- a/daemons/clvmd/clvmd-corosync.c +++ b/daemons/clvmd/clvmd-corosync.c @@ -314,9 +314,14 @@ static int _init_cluster(void) /* Create a lockspace for LV & VG locks to live in */ lockspace = dlm_create_lockspace(LOCKSPACE_NAME, 0600); if (!lockspace) { - syslog(LOG_ERR, "Unable to create lockspace for CLVM: %m"); - quorum_finalize(quorum_handle); - return -1; + if (errno == EEXIST) { + lockspace = dlm_open_lockspace(LOCKSPACE_NAME); + } + if (!lockspace) { + syslog(LOG_ERR, "Unable to create lockspace for CLVM: %m"); + quorum_finalize(quorum_handle); + return -1; + } } dlm_ls_pthread_init(lockspace); DEBUGLOG("DLM initialisation complete\n"); |