I've noticed that extending or reducing a snapshot doesn't seem to affect the used PE count of its volume group (as shown in places like /proc/lvm/global). I haven't noticed any particular ill effects, but it is disconcerting. The PE count for the PV *is* updated. Strangely, after reboot (at least with lvm 1.0.3) the PE count for the PV does not include PEs used by snapshots. As soon as a single snapshot is created, removed, extended, or reduced, it becomes correct again. Again, I haven't noticed any particular ill effects. Following is a patch that solves the first problem (but not the second) for lvm 1.0.3. Looking at current CVS, I believe the problem still exists. The first portion of the patch adjusts vg's pe_allocated field in __extend_reduce_snapshot(). The second portion of the patch updates the snapshot's lv_allocated_snapshot_le field to be correct after a resize in lvm_do_lv_extend_reduce(). No user space changes are required. Dale J. Stephenson steph@snapserver.com --- linux/drivers/md/lvm.c.orig Mon Apr 29 08:50:41 2002 +++ linux/drivers/md/lvm.c Mon Apr 29 12:41:29 2002 @@ -2280,6 +2280,9 @@ return -ENOMEM; } + vg_ptr->pe_allocated -= old_lv->lv_allocated_snapshot_le; + vg_ptr->pe_allocated += new_lv->lv_allocated_le; + return 0; } @@ -2409,6 +2412,8 @@ vfree(old_lv->lv_block_exception); vfree(old_lv->lv_snapshot_hash_table); + old_lv->lv_allocated_snapshot_le = + new_lv->lv_allocated_le; 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 = _______________________________________________ linux-lvm mailing list linux-lvm@sistina.com http://lists.sistina.com/mailman/listinfo/linux-lvm read the LVM HOW-TO at http://www.sistina.com/lvm/Pages/howto.html