Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.4
lvm2
call_cpg_leave_before_shutdown.diff
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File call_cpg_leave_before_shutdown.diff of Package lvm2
Index: LVM2.2.02.45/daemons/clvmd/clvmd-openais.c ================================================================================ --- LVM2.2.02.58/daemons/clvmd/clvmd-openais.c +++ LVM2.2.02.58/daemons/clvmd/clvmd-openais.c @@ -354,7 +354,7 @@ err = cpg_join(cpg_handle, &cpg_group_name); if (err != SA_AIS_OK) { cpg_finalize(cpg_handle); - dlm_release_lockspace(LOCKSPACE_NAME, lockspace, 0); + dlm_release_lockspace(LOCKSPACE_NAME, lockspace, 1); syslog(LOG_ERR, "Cannot join clvmd process group"); DEBUGLOG("Cannot join clvmd process group: %d\n", err); return ais_to_errno(err); @@ -363,8 +363,9 @@ err = cpg_local_get(cpg_handle, &our_nodeid); if (err != SA_AIS_OK) { + cpg_leave(cpg_handle, &cpg_group_name); cpg_finalize(cpg_handle); - dlm_release_lockspace(LOCKSPACE_NAME, lockspace, 0); + dlm_release_lockspace(LOCKSPACE_NAME, lockspace, 1); syslog(LOG_ERR, "Cannot get local node id\n"); return ais_to_errno(err); } @@ -381,15 +382,11 @@ destroy_lvhash(); 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"); - } + r = dlm_release_lockspace(LOCKSPACE_NAME, lockspace, 1); + if (r != 0) { + syslog(LOG_ERR, "dlm_release_lockspace failed: %d\n", errno); } + cpg_leave(cpg_handle, &cpg_group_name); cpg_finalize(cpg_handle); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor