From 436cd051562cc1304be0ad188bef197cdda2980c Mon Sep 17 00:00:00 2001 From: Christine Caulfield Date: Fri, 6 Mar 2009 11:29:38 +0000 Subject: [PATCH] Fix unlocks in clvmd-corosync. The DLM unlock returns EUNLOCK in the lksb on success, not 0 --- WHATS_NEW | 1 + daemons/clvmd/clvmd-corosync.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/WHATS_NEW b/WHATS_NEW index c1a5b89ae..e039108f8 100644 --- a/WHATS_NEW +++ b/WHATS_NEW @@ -1,6 +1,7 @@ Version 2.02.46 - ================================ Flush memory pool and fix locking in clvmd refresh and backup command. + Fix unlocks in clvmd-corosync. Broken in 2.02.45. Version 2.02.45 - 3rd March 2009 ================================ diff --git a/daemons/clvmd/clvmd-corosync.c b/daemons/clvmd/clvmd-corosync.c index 27819ace8..9cacc30c6 100644 --- a/daemons/clvmd/clvmd-corosync.c +++ b/daemons/clvmd/clvmd-corosync.c @@ -510,7 +510,7 @@ static int _unlock_resource(const char *resource, int lockid) DEBUGLOG("Unlock returned %d\n", err); return err; } - if (lksb.sb_status != 0) + if (lksb.sb_status != EUNLOCK) { DEBUGLOG("dlm_ls_unlock_wait returns lksb.sb_status: %d\n", lksb.sb_status); errno = lksb.sb_status;