[lvm-devel] LVM2 ./WHATS_NEW lib/mm/memlock.c libdm/mm/poo ...
zkabelac at sourceware.org
zkabelac at sourceware.org
Wed Mar 30 12:43:34 UTC 2011
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: zkabelac at sourceware.org 2011-03-30 12:43:33
Modified files:
. : WHATS_NEW
lib/mm : memlock.c
libdm/mm : pool-fast.c
Log message:
Valgrind updates
Avoid locking sum testing with valgrind compilation.
Make memory unaccessible in the valgrind for dm_pool_abadon_object.
Valgrind hinting should not be needed in _free_chunk for dm_free.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.1964&r2=1.1965
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/mm/memlock.c.diff?cvsroot=lvm2&r1=1.37&r2=1.38
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/libdm/mm/pool-fast.c.diff?cvsroot=lvm2&r1=1.12&r2=1.13
--- LVM2/WHATS_NEW 2011/03/30 12:36:19 1.1964
+++ LVM2/WHATS_NEW 2011/03/30 12:43:32 1.1965
@@ -1,5 +1,6 @@
Version 2.02.85 -
===================================
+ Enhance usability with the valgrind memcheck tool.
Support regular quit of the lvm_thread_fn function in clvmd.
Fix reading of unallocated memory in lvm1 format import function.
Replace several strncmp() calls with id_equal().
--- LVM2/lib/mm/memlock.c 2011/03/06 17:52:07 1.37
+++ LVM2/lib/mm/memlock.c 2011/03/30 12:43:32 1.38
@@ -195,6 +195,14 @@
}
}
+#ifdef VALGRIND_POOL
+ /*
+ * Valgrind is continually eating memory while executing code
+ * so we need to deactivate check of locked memory size
+ */
+ sz -= sz; /* = 0, but avoids getting warning about dead assigment */
+
+#endif
*mstats += sz;
log_debug("%s %10ldKiB %12lx - %12lx %c%c%c%c%s",
(lock == LVM_MLOCK) ? "mlock" : "munlock",
--- LVM2/libdm/mm/pool-fast.c 2011/03/10 14:49:01 1.12
+++ LVM2/libdm/mm/pool-fast.c 2011/03/30 12:43:33 1.13
@@ -238,6 +238,9 @@
void dm_pool_abandon_object(struct dm_pool *p)
{
+#ifdef VALGRIND_POOL
+ VALGRIND_MAKE_MEM_NOACCESS(p->chunk, p->object_len);
+#endif
p->object_len = 0;
p->object_alignment = DEFAULT_ALIGNMENT;
}
@@ -278,11 +281,5 @@
static void _free_chunk(struct chunk *c)
{
- if (c) {
-#ifdef VALGRIND_POOL
- VALGRIND_MAKE_MEM_UNDEFINED(c, c->end - (char *) c);
-#endif
-
- dm_free(c);
- }
+ dm_free(c);
}
More information about the lvm-devel
mailing list