public inbox for lvm2-cvs@sourceware.org
help / color / mirror / Atom feed
* LVM2 daemons/clvmd/lvm-functions.c lib/locking ...
@ 2011-02-02 20:04 zkabelac
0 siblings, 0 replies; 2+ messages in thread
From: zkabelac @ 2011-02-02 20:04 UTC (permalink / raw)
To: lvm-devel, lvm2-cvs
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: zkabelac@sourceware.org 2011-02-02 20:04:39
Modified files:
daemons/clvmd : lvm-functions.c
lib/locking : no_locking.c
Log message:
Better fix for no-locking udev sync and clvmd
This is better way how to fix clustered synchronization with udev.
As the code for message passing needs fixed - put currently
fs_unlock() after every active/deactive command in clvmd to
ensure nodes are properly created in time.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/daemons/clvmd/lvm-functions.c.diff?cvsroot=lvm2&r1=1.106&r2=1.107
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/locking/no_locking.c.diff?cvsroot=lvm2&r1=1.25&r2=1.26
--- LVM2/daemons/clvmd/lvm-functions.c 2011/01/12 20:42:50 1.106
+++ LVM2/daemons/clvmd/lvm-functions.c 2011/02/02 20:04:39 1.107
@@ -507,6 +507,7 @@
switch (command & LCK_MASK) {
case LCK_LV_EXCLUSIVE:
status = do_activate_lv(resource, lock_flags, LCK_EXCL);
+ fs_unlock();
break;
case LCK_LV_SUSPEND:
@@ -520,10 +521,12 @@
case LCK_LV_ACTIVATE:
status = do_activate_lv(resource, lock_flags, LCK_READ);
+ fs_unlock();
break;
case LCK_LV_DEACTIVATE:
status = do_deactivate_lv(resource, lock_flags);
+ fs_unlock();
break;
default:
--- LVM2/lib/locking/no_locking.c 2011/01/12 20:42:51 1.25
+++ LVM2/lib/locking/no_locking.c 2011/02/02 20:04:39 1.26
@@ -38,7 +38,9 @@
{
switch (flags & LCK_SCOPE_MASK) {
case LCK_VG:
- if (!strcmp(resource, VG_SYNC_NAMES))
+ if (!strcmp(resource, VG_SYNC_NAMES) ||
+ (((flags & LCK_TYPE_MASK) == LCK_UNLOCK) &&
+ is_real_vg(resource)))
fs_unlock();
break;
case LCK_LV:
^ permalink raw reply [flat|nested] 2+ messages in thread
* LVM2 daemons/clvmd/lvm-functions.c lib/locking ...
@ 2011-02-04 19:21 zkabelac
0 siblings, 0 replies; 2+ messages in thread
From: zkabelac @ 2011-02-04 19:21 UTC (permalink / raw)
To: lvm-devel, lvm2-cvs
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: zkabelac@sourceware.org 2011-02-04 19:21:47
Modified files:
daemons/clvmd : lvm-functions.c
lib/locking : no_locking.c
Log message:
Remove extra sync calls.
Remove temporaly added fs_unlock() calls to fix clmvd usablity.
Now when the message passing is properly working - they are no longer needed.
Simplify no_locking check for VG unlock - as message is always send
for all targets - clustered & non-clustered.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/daemons/clvmd/lvm-functions.c.diff?cvsroot=lvm2&r1=1.109&r2=1.110
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/locking/no_locking.c.diff?cvsroot=lvm2&r1=1.26&r2=1.27
--- LVM2/daemons/clvmd/lvm-functions.c 2011/02/03 16:03:13 1.109
+++ LVM2/daemons/clvmd/lvm-functions.c 2011/02/04 19:21:47 1.110
@@ -507,7 +507,6 @@
switch (command & LCK_MASK) {
case LCK_LV_EXCLUSIVE:
status = do_activate_lv(resource, lock_flags, LCK_EXCL);
- fs_unlock();
break;
case LCK_LV_SUSPEND:
@@ -517,17 +516,14 @@
case LCK_UNLOCK:
case LCK_LV_RESUME: /* if active */
status = do_resume_lv(resource, lock_flags);
- fs_unlock();
break;
case LCK_LV_ACTIVATE:
status = do_activate_lv(resource, lock_flags, LCK_READ);
- fs_unlock();
break;
case LCK_LV_DEACTIVATE:
status = do_deactivate_lv(resource, lock_flags);
- fs_unlock();
break;
default:
--- LVM2/lib/locking/no_locking.c 2011/02/02 20:04:39 1.26
+++ LVM2/lib/locking/no_locking.c 2011/02/04 19:21:47 1.27
@@ -38,9 +38,7 @@
{
switch (flags & LCK_SCOPE_MASK) {
case LCK_VG:
- if (!strcmp(resource, VG_SYNC_NAMES) ||
- (((flags & LCK_TYPE_MASK) == LCK_UNLOCK) &&
- is_real_vg(resource)))
+ if (!strcmp(resource, VG_SYNC_NAMES))
fs_unlock();
break;
case LCK_LV:
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2011-02-04 19:21 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-02-02 20:04 LVM2 daemons/clvmd/lvm-functions.c lib/locking zkabelac
2011-02-04 19:21 zkabelac
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).