public inbox for lvm2-cvs@sourceware.org
help / color / mirror / Atom feed
* LVM2 lib/cache/lvmcache.c ./WHATS_NEW
@ 2008-09-16 18:05 agk
  0 siblings, 0 replies; 2+ messages in thread
From: agk @ 2008-09-16 18:05 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	agk@sourceware.org	2008-09-16 18:05:11

Modified files:
	lib/cache      : lvmcache.c 
	.              : WHATS_NEW 

Log message:
	Avoid repeatedly wiping cache while VG_GLOBAL is held in vgscan & pvscan.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/cache/lvmcache.c.diff?cvsroot=lvm2&r1=1.59&r2=1.60
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.951&r2=1.952

--- LVM2/lib/cache/lvmcache.c	2008/06/27 15:18:31	1.59
+++ LVM2/lib/cache/lvmcache.c	2008/09/16 18:05:11	1.60
@@ -97,9 +97,10 @@
 	int was_locked = (info->status & CACHE_LOCKED) ? 1 : 0;
 
 	/*
-	 * Cache becomes invalid whenever lock state changes
+	 * Cache becomes invalid whenever lock state changes unless
+	 * exclusive VG_GLOBAL is held (i.e. while scanning).
 	 */
-	if (was_locked != locked) {
+	if (!vgname_is_locked(VG_GLOBAL) && (was_locked != locked)) {
 		info->status |= CACHE_INVALID;
 		*cached_vgmetadata_valid = 0;
 	}
@@ -166,7 +167,7 @@
 
 		/* Indicate that PVs could now be missing from the cache */
 		init_full_scan_done(0);
-	} else
+	} else if (!vgname_is_locked(VG_GLOBAL))
 		_drop_metadata(vgname);
 }
 
--- LVM2/WHATS_NEW	2008/09/12 15:26:44	1.951
+++ LVM2/WHATS_NEW	2008/09/16 18:05:11	1.952
@@ -1,5 +1,6 @@
 Version 2.02.40 - 
 ================================
+  Avoid repeatedly wiping cache while VG_GLOBAL is held in vgscan & pvscan.
   Fix pvresize to not allow resize if PV has two metadata areas.
   Fix setting of volume limit count if converting to lvm1 format.
   Fix vgconvert logical volume id metadata validation.


^ permalink raw reply	[flat|nested] 2+ messages in thread

* LVM2 lib/cache/lvmcache.c ./WHATS_NEW
@ 2008-04-24  2:22 agk
  0 siblings, 0 replies; 2+ messages in thread
From: agk @ 2008-04-24  2:22 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	agk@sourceware.org	2008-04-24 02:22:07

Modified files:
	lib/cache      : lvmcache.c 
	.              : WHATS_NEW 

Log message:
	Exclude VG_GLOBAL from internal concurrent VG lock counter.
	(Avoids 'device left open' warning messages from vgscan etc.)

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/cache/lvmcache.c.diff?cvsroot=lvm2&r1=1.46&r2=1.47
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.860&r2=1.861

--- LVM2/lib/cache/lvmcache.c	2008/04/15 14:54:00	1.46
+++ LVM2/lib/cache/lvmcache.c	2008/04/24 02:22:06	1.47
@@ -156,7 +156,8 @@
 
 	_update_cache_lock_state(vgname, 1);
 
-	_vgs_locked++;
+	if (strcmp(vgname, VG_GLOBAL))
+		_vgs_locked++;
 }
 
 int vgname_is_locked(const char *vgname)
@@ -178,7 +179,7 @@
 	dm_hash_remove(_lock_hash, vgname);
 
 	/* FIXME Do this per-VG */
-	if (!--_vgs_locked)
+	if (strcmp(vgname, VG_GLOBAL) && !--_vgs_locked)
 		dev_close_all();
 }
 
--- LVM2/WHATS_NEW	2008/04/23 14:33:05	1.860
+++ LVM2/WHATS_NEW	2008/04/24 02:22:07	1.861
@@ -1,8 +1,9 @@
 Version 2.02.36 - 
 =================================
+  Exclude VG_GLOBAL from internal concurrent VG lock counter.
   Fix vgsplit internal counting of snapshot LVs.
-  Fix internal snapshot_count when vgmerge with snapshots in source VG.
-  Simply clvmd-openais by using non-async saLckResourceLock.
+  Fix vgmerge snapshot_count when source VG contains snapshots.
+  Simplify clvmd-openais by using non-async saLckResourceLock.
   Check lv_count in vg_validate.
   Fix internal LV counter when a snapshot is removed.
   Fix metadata corruption writing lvm1-formatted metadata with snapshots.


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-09-16 18:05 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-09-16 18:05 LVM2 lib/cache/lvmcache.c ./WHATS_NEW agk
  -- strict thread matches above, loose matches on Subject: below --
2008-04-24  2:22 agk

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).