fc6 devicemapper/lvm2 is unusable due to pvmove being broken, so this is being run on rawhide bits. With: $ rpm -qa lvm2 device-mapper lvm2-2.02.13-1.fc7 device-mapper-1.02.12-3.fc7 And running: # lvresize -vvvvvv --size +1g /dev/tm/home I get: #metadata/pv_manip.c:241 /dev/sda1 0: 0 59618: home(0:0) #metadata/pv_manip.c:241 /dev/sdf1 0: 0 59618: home(103779:0) #metadata/pv_manip.c:241 /dev/sdc1 0: 0 95387: home(163397:0) #metadata/pv_manip.c:241 /dev/sdg1 0: 0 44161: home(59618:0) #metadata/pv_manip.c:241 /dev/sdg1 1: 44161 15457: NULL(0:0) #format_text/archiver.c:129 Archiving volume group "tm" metadata (seqno 36). Extending logical volume home to 1011.88 GB #metadata/pv_map.c:49 Allowing allocation on /dev/sdg1 start PE 44161 length 15457 #metadata/lv_manip.c:900 Insufficient free space: 259040 extents needed, but only 15457 available
Can you run lvm_dump.sh and attach the tarball to this bug? Thanks.
Created attachment 139657 [details] /usr/sbin/lvmdump generated tarball
I believe the issue is this recently added check isn't checking "uint32_t *allocated" http://sources.redhat.com/cgi-bin/cvsweb.cgi/LVM2/lib/metadata/lv_manip.c.diff?r1=1.110&r2=1.111&cvsroot=lvm2
This patch fixes it for me. Hopefully these updates will make it to fc6 soon. --- lv_manip.c.lvm2.fixup 2006-10-23 11:54:51.000000000 -0400 +++ lv_manip.c 2006-10-30 09:43:11.000000000 -0500 @@ -894,9 +894,9 @@ /* Is there enough total space? */ free_pes = pv_maps_size(pvms); - if (needed > free_pes) { + if (needed - *allocated > free_pes) { log_error("Insufficient free space: %" PRIu32 " extents needed," - " but only %" PRIu32 " available", needed, + " but only %" PRIu32 " available", needed - *allocated, free_pes); return 0; }
lvm2-2_02_13-2_fc7 submitted to build system
Thanks for the fix. Built successfully so should appear in rawhide/fc7. When we hit upon a stable lvm2 release I'll update fc6 to it. (This bug was introduced after fc6 froze of course.)