This is the mail archive of the
lvm2-cvs@sourceware.org
mailing list for the LVM2 project.
LVM2 ./WHATS_NEW daemons/clvmd/lvm-functions.c
- From: mbroz at sourceware dot org
- To: lvm-devel at redhat dot com, lvm2-cvs at sourceware dot org
- Date: 9 Dec 2009 18:45:14 -0000
- Subject: LVM2 ./WHATS_NEW daemons/clvmd/lvm-functions.c
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: mbroz@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;