public inbox for lvm2-cvs@sourceware.org
help / color / mirror / Atom feed
* LVM2 ./WHATS_NEW_DM libdm/mm/pool-fast.c
@ 2011-10-23 15:38 zkabelac
  0 siblings, 0 replies; 3+ messages in thread
From: zkabelac @ 2011-10-23 15:38 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	zkabelac@sourceware.org	2011-10-23 15:38:03

Modified files:
	.              : WHATS_NEW_DM 
	libdm/mm       : pool-fast.c 

Log message:
	Fix usage of DEBUG_ENFORCE_POOL_LOCKING with DEBUG_MEM
	
	Since DEBUG_MEM is storing own extra structure within returned memory chunk,
	glibc free must be used directly for posix_memaling() allocated block.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW_DM.diff?cvsroot=lvm2&r1=1.517&r2=1.518
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/libdm/mm/pool-fast.c.diff?cvsroot=lvm2&r1=1.16&r2=1.17

--- LVM2/WHATS_NEW_DM	2011/10/20 14:43:33	1.517
+++ LVM2/WHATS_NEW_DM	2011/10/23 15:38:02	1.518
@@ -1,5 +1,6 @@
 Version 1.02.68 -
 ==================================
+  Fix compile-time pool memory locking with DEBUG_MEM.
   Fix valgrind error reports in free of pool chunks with DEBUG_MEM.
   Align size of structure chunk for fast pool allocator to 8 bytes.
   Simplify some pointer operations in dm_free_aux() debug code.
--- LVM2/libdm/mm/pool-fast.c	2011/10/20 14:43:33	1.16
+++ LVM2/libdm/mm/pool-fast.c	2011/10/23 15:38:03	1.17
@@ -306,7 +306,12 @@
 		VALGRIND_MAKE_MEM_UNDEFINED(c + 1, c->end - (char *) (c + 1));
 #  endif
 #endif
+#ifdef DEBUG_ENFORCE_POOL_LOCKING
+	/* since DEBUG_MEM is using own memory list */
+	free(c); /* for posix_memalign() */
+#else
 	dm_free(c);
+#endif
 }
 
 


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

* LVM2 ./WHATS_NEW_DM libdm/mm/pool-fast.c
@ 2011-10-20 14:43 zkabelac
  0 siblings, 0 replies; 3+ messages in thread
From: zkabelac @ 2011-10-20 14:43 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	zkabelac@sourceware.org	2011-10-20 14:43:33

Modified files:
	.              : WHATS_NEW_DM 
	libdm/mm       : pool-fast.c 

Log message:
	Aling structure chunk on default aling size
	
	Since we use 8 bytes by default for the pool allocation,
	keep the structure aligned with this size.
	(Somehow it was not applied in previous commit.)

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW_DM.diff?cvsroot=lvm2&r1=1.516&r2=1.517
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/libdm/mm/pool-fast.c.diff?cvsroot=lvm2&r1=1.15&r2=1.16

--- LVM2/WHATS_NEW_DM	2011/10/20 13:39:57	1.516
+++ LVM2/WHATS_NEW_DM	2011/10/20 14:43:33	1.517
@@ -1,7 +1,7 @@
 Version 1.02.68 -
 ==================================
   Fix valgrind error reports in free of pool chunks with DEBUG_MEM.
-  Aling size of structure chunk for fast pool allocator to 8 bytes.
+  Align size of structure chunk for fast pool allocator to 8 bytes.
   Simplify some pointer operations in dm_free_aux() debug code.
   Remove unused dbg_malloc.h file from source tree.
   Cleanup backtraces for _create_and_load_v4().
--- LVM2/libdm/mm/pool-fast.c	2011/10/20 13:39:57	1.15
+++ LVM2/libdm/mm/pool-fast.c	2011/10/20 14:43:33	1.16
@@ -23,7 +23,7 @@
 struct chunk {
 	char *begin, *end;
 	struct chunk *prev;
-};
+} __attribute__((aligned(8)));
 
 struct dm_pool {
 	struct dm_list list;


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

* LVM2 ./WHATS_NEW_DM libdm/mm/pool-fast.c
@ 2011-10-20 13:39 zkabelac
  0 siblings, 0 replies; 3+ messages in thread
From: zkabelac @ 2011-10-20 13:39 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	zkabelac@sourceware.org	2011-10-20 13:39:57

Modified files:
	.              : WHATS_NEW_DM 
	libdm/mm       : pool-fast.c 

Log message:
	Mark chunk memory for free as defined again for valgrind
	
	When DEBUG_MEM is used, the memory is trashed with extra pattern before real
	free() is called, and as this memory was marked as non accessible when used with
	valgrind, make it again usable.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW_DM.diff?cvsroot=lvm2&r1=1.515&r2=1.516
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/libdm/mm/pool-fast.c.diff?cvsroot=lvm2&r1=1.14&r2=1.15

--- LVM2/WHATS_NEW_DM	2011/10/20 13:36:13	1.515
+++ LVM2/WHATS_NEW_DM	2011/10/20 13:39:57	1.516
@@ -1,5 +1,6 @@
 Version 1.02.68 -
 ==================================
+  Fix valgrind error reports in free of pool chunks with DEBUG_MEM.
   Aling size of structure chunk for fast pool allocator to 8 bytes.
   Simplify some pointer operations in dm_free_aux() debug code.
   Remove unused dbg_malloc.h file from source tree.
--- LVM2/libdm/mm/pool-fast.c	2011/08/11 17:29:05	1.14
+++ LVM2/libdm/mm/pool-fast.c	2011/10/20 13:39:57	1.15
@@ -300,6 +300,12 @@
 
 static void _free_chunk(struct chunk *c)
 {
+#ifdef VALGRIND_POOL
+#  ifdef DEBUG_MEM
+	if (c)
+		VALGRIND_MAKE_MEM_UNDEFINED(c + 1, c->end - (char *) (c + 1));
+#  endif
+#endif
 	dm_free(c);
 }
 


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

end of thread, other threads:[~2011-10-23 15:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-10-23 15:38 LVM2 ./WHATS_NEW_DM libdm/mm/pool-fast.c zkabelac
  -- strict thread matches above, loose matches on Subject: below --
2011-10-20 14:43 zkabelac
2011-10-20 13:39 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).