[linux-lvm] Resizing snapshots leaks vmalloc memory
Stephenson, Dale
dstephenson at snapserver.com
Thu Mar 14 11:14:01 UTC 2002
When repeatedly resizing snapshots (both reducing and enlarging), I
eventually would get VMALLOC failures. Looking at the code, it looks like
when snapshots are resized the old exception table and hash table are never
freed. A patch to address the problem follows.
Dale Stephenson
steph at snapserver.com
--- linux/drivers/md/lvm.c.orig Thu Mar 14 08:21:16 2002
+++ linux/drivers/md/lvm.c Thu Mar 14 08:23:07 2002
@@ -2489,6 +2489,8 @@
memcpy(new_lv->lv_block_exception,
old_lv->lv_block_exception, size);
+ vfree(old_lv->lv_block_exception);
+ vfree(old_lv->lv_snapshot_hash_table);
old_lv->lv_remap_end = new_lv->lv_remap_end;
old_lv->lv_block_exception = new_lv->lv_block_exception;
old_lv->lv_snapshot_hash_table =
More information about the linux-lvm
mailing list