[lvm-devel] LVM2 ./WHATS_NEW daemons/clvmd/lvm-functions.c
mbroz at sourceware.org
mbroz at sourceware.org
Wed Dec 9 18:45:14 UTC 2009
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: mbroz at sourceware.org 2009-12-09 18:45:13
Modified files:
. : WHATS_NEW
daemons/clvmd : lvm-functions.c
Log message:
Allow implicit "convert" to the same lock mode.
(Code already not fail if unlocking not locked resource.)
This is needed in pre/post lock_lv call, where we can
request the same lock on local node becuase of suspend call.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.1344&r2=1.1345
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/daemons/clvmd/lvm-functions.c.diff?cvsroot=lvm2&r1=1.73&r2=1.74
--- LVM2/WHATS_NEW 2009/12/09 18:42:02 1.1344
+++ LVM2/WHATS_NEW 2009/12/09 18:45:12 1.1345
@@ -1,5 +1,6 @@
Version 2.02.57 -
====================================
+ Allow implicit convert to the same cluster lock mode.
Replace magic masks in cluster locking code by defined masks.
Remove log volume from metadata if initial deactivation fails.
Give better error message for pvmove when all data is skipped.
--- LVM2/daemons/clvmd/lvm-functions.c 2009/12/09 18:42:03 1.73
+++ LVM2/daemons/clvmd/lvm-functions.c 2009/12/09 18:45:13 1.74
@@ -245,6 +245,11 @@
lvi = lookup_info(resource);
+ if (lvi && lvi->lock_mode == mode) {
+ DEBUGLOG("hold_lock, lock mode %d already held\n", mode);
+ return 0;
+ }
+
/* Only allow explicit conversions */
if (lvi && !(flags & LKF_CONVERT)) {
errno = EBUSY;
More information about the lvm-devel
mailing list