summaryrefslogtreecommitdiffstats
path: root/daemons/clvmd/lvm-functions.c
diff options
context:
space:
mode:
authorMilan Broz <mbroz@redhat.com>2009-12-09 18:42:02 +0000
committerMilan Broz <mbroz@redhat.com>2009-12-09 18:42:02 +0000
commitcc31b2bd3f16a6a4ef36421569ab178937603ace (patch)
tree2d7edd36965c627eaa3ed47aff7e094ecd862deb /daemons/clvmd/lvm-functions.c
parent7251c8f3a5a9892539be1a462c3339e81030db73 (diff)
downloadlvm2-cc31b2bd3f16a6a4ef36421569ab178937603ace.tar.gz
lvm2-cc31b2bd3f16a6a4ef36421569ab178937603ace.tar.xz
lvm2-cc31b2bd3f16a6a4ef36421569ab178937603ace.zip
Get rid of magic masks in cluster locking code - clvmd part.
- do_command and lock_vg expect flags (no change here) Bug fixes: - lock_vg should check for NONBLOCK on lock_cmd, flags have this bit masked-out - do_pre/post_command expect do not mask flag at all, this causes that the code inside is never run! (see following patches, these functions expect plain command without flags)
Diffstat (limited to 'daemons/clvmd/lvm-functions.c')
-rw-r--r--daemons/clvmd/lvm-functions.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/daemons/clvmd/lvm-functions.c b/daemons/clvmd/lvm-functions.c
index e56d11b4..7fee65d7 100644
--- a/daemons/clvmd/lvm-functions.c
+++ b/daemons/clvmd/lvm-functions.c
@@ -542,7 +542,7 @@ int pre_lock_lv(unsigned char command, unsigned char lock_flags, char *resource)
lock out on this node (because we are the node modifying the metadata)
before suspending cluster-wide.
*/
- if (command == LCK_LV_SUSPEND) {
+ if ((command & (LCK_SCOPE_MASK | LCK_TYPE_MASK)) == LCK_LV_SUSPEND) {
DEBUGLOG("pre_lock_lv: resource '%s', cmd = %s, flags = %s\n",
resource, decode_locking_cmd(command), decode_flags(lock_flags));
@@ -559,7 +559,7 @@ int post_lock_lv(unsigned char command, unsigned char lock_flags,
int status;
/* Opposite of above, done on resume after a metadata update */
- if (command == LCK_LV_RESUME) {
+ if ((command & (LCK_SCOPE_MASK | LCK_TYPE_MASK)) == LCK_LV_RESUME) {
int oldmode;
DEBUGLOG