1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-23 21:35:29 +03:00

Properly decode flags even for VG locks.

And decode flags in humar readable form in client.
And clean some trailing whitespaces.

No functional change in this patch (only debugging messages changed).
This commit is contained in:
Milan Broz 2010-01-05 16:03:37 +00:00
parent c02cc5321a
commit 1078f24d5a
3 changed files with 44 additions and 41 deletions

View File

@ -1,5 +1,6 @@
Version 2.02.57 -
====================================
Properly decode flags even for VG locks.
Properly handle precommitted flag in cache when commited data only present.
Resume renamed volumes in reverse order to preserve memlock pairing.
Drop metadata cache after device was autorepaired and removed from VG.

View File

@ -74,23 +74,23 @@ static const char *decode_locking_cmd(unsigned char cmdl)
const char *command;
switch (cmdl & LCK_TYPE_MASK) {
case LCK_NULL:
type = "NULL";
case LCK_NULL:
type = "NULL";
break;
case LCK_READ:
type = "READ";
case LCK_READ:
type = "READ";
break;
case LCK_PREAD:
type = "PREAD";
case LCK_PREAD:
type = "PREAD";
break;
case LCK_WRITE:
type = "WRITE";
case LCK_WRITE:
type = "WRITE";
break;
case LCK_EXCL:
type = "EXCL";
case LCK_EXCL:
type = "EXCL";
break;
case LCK_UNLOCK:
type = "UNLOCK";
case LCK_UNLOCK:
type = "UNLOCK";
break;
default:
type = "unknown";
@ -98,34 +98,35 @@ static const char *decode_locking_cmd(unsigned char cmdl)
}
switch (cmdl & LCK_SCOPE_MASK) {
case LCK_VG:
scope = "VG";
case LCK_VG:
scope = "VG";
command = "LCK_VG";
break;
case LCK_LV:
case LCK_LV:
scope = "LV";
switch (cmdl & LCK_MASK) {
case LCK_LV_EXCLUSIVE & LCK_MASK:
command = "LCK_LV_EXCLUSIVE";
break;
case LCK_LV_SUSPEND & LCK_MASK:
command = "LCK_LV_SUSPEND";
break;
case LCK_LV_RESUME & LCK_MASK:
command = "LCK_LV_RESUME";
break;
case LCK_LV_ACTIVATE & LCK_MASK:
command = "LCK_LV_ACTIVATE";
break;
case LCK_LV_DEACTIVATE & LCK_MASK:
command = "LCK_LV_DEACTIVATE";
break;
default:
command = "unknown";
break;
}
break;
default:
scope = "unknown";
break;
}
switch (cmdl & LCK_MASK) {
case LCK_LV_EXCLUSIVE & LCK_MASK:
command = "LCK_LV_EXCLUSIVE";
break;
case LCK_LV_SUSPEND & LCK_MASK:
command = "LCK_LV_SUSPEND";
break;
case LCK_LV_RESUME & LCK_MASK:
command = "LCK_LV_RESUME";
break;
case LCK_LV_ACTIVATE & LCK_MASK:
command = "LCK_LV_ACTIVATE";
break;
case LCK_LV_DEACTIVATE & LCK_MASK:
command = "LCK_LV_DEACTIVATE";
break;
default:
command = "unknown";
break;
}

View File

@ -450,12 +450,13 @@ 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 (0x%x)", lock_scope, lockname,
lock_type,
flags & LCK_NONBLOCK ? "" : "B",
flags & LCK_HOLD ? "H" : "",
flags & LCK_LOCAL ? "L" : "",
flags & LCK_CLUSTER_VG ? "C" : "",
log_very_verbose("Locking %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" : "",
flags & LCK_LOCAL ? "|LOCAL" : "",
flags & LCK_CLUSTER_VG ? "|CLUSTER" : "",
flags & LCK_CACHE ? "|CACHE" : "",
flags);
/* Send a message to the cluster manager */