From 3cc78c578a7f946bdd7f3be162d02e0ae75ffd43 Mon Sep 17 00:00:00 2001 From: Alasdair Kergon Date: Thu, 8 Dec 2011 18:19:05 +0000 Subject: [PATCH] Don't pass LCK_LOCAL to clvmd - it's unused. Pass LCK_CLUSTER_VG in args[0] instead of args[1]. --- lib/locking/cluster_locking.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/locking/cluster_locking.c b/lib/locking/cluster_locking.c index d86bc1a7f..6ab9c0ef8 100644 --- a/lib/locking/cluster_locking.c +++ b/lib/locking/cluster_locking.c @@ -320,9 +320,10 @@ static int _lock_for_cluster(struct cmd_context *cmd, unsigned char clvmd_cmd, args = alloca(len); strcpy(args + 2, name); - /* Mask off lock flags */ - args[0] = flags & (LCK_SCOPE_MASK | LCK_TYPE_MASK | LCK_NONBLOCK | LCK_HOLD); - args[1] = flags & (LCK_LOCAL | LCK_CLUSTER_VG); + /* args[0] holds bottom 8 bits except LCK_LOCAL (0x40). */ + args[0] = flags & (LCK_SCOPE_MASK | LCK_TYPE_MASK | LCK_NONBLOCK | LCK_HOLD | LCK_CLUSTER_VG); + + args[1] = 0; if (flags & LCK_ORIGIN_ONLY) args[1] |= LCK_ORIGIN_ONLY_MODE; @@ -492,7 +493,7 @@ int lock_resource(struct cmd_context *cmd, const char *resource, uint32_t flags) return 0; } - log_very_verbose("Locking %s %s %s (%s%s%s%s%s%s%s) (0x%x)", lock_scope, lockname, + log_very_verbose("Locking %s %s %s (%s%s%s%s%s%s%s%s) (0x%x)", lock_scope, lockname, lock_type, lock_scope, flags & LCK_NONBLOCK ? "|NONBLOCK" : "", flags & LCK_HOLD ? "|HOLD" : "", @@ -500,6 +501,7 @@ int lock_resource(struct cmd_context *cmd, const char *resource, uint32_t flags) flags & LCK_CLUSTER_VG ? "|CLUSTER" : "", flags & LCK_CACHE ? "|CACHE" : "", flags & LCK_ORIGIN_ONLY ? "|ORIGIN_ONLY" : "", + flags & LCK_REVERT ? "|REVERT" : "", flags); /* Send a message to the cluster manager */