diff options
author | Milan Broz <mbroz@redhat.com> | 2009-12-09 18:42:02 +0000 |
---|---|---|
committer | Milan Broz <mbroz@redhat.com> | 2009-12-09 18:42:02 +0000 |
commit | cc31b2bd3f16a6a4ef36421569ab178937603ace (patch) | |
tree | 2d7edd36965c627eaa3ed47aff7e094ecd862deb /daemons/clvmd/lvm-functions.c | |
parent | 7251c8f3a5a9892539be1a462c3339e81030db73 (diff) | |
download | lvm2-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.c | 4 |
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 |