Tupshin, Thanks for finding this, at first glance it looks to me like a problem with the block layer rather than dm. I'll look into it today and try and find a fix. - Joe On Wed, Aug 20, 2003 at 06:20:28PM -0700, Tupshin Harper wrote: > Sorry for the cross-post...wasn't sure where to put this one. Feel free > to respond on whichever group is more appropriate... > > I am experiencing a problem where xfs_growfs would fail to do anything > unless the fs has been unmounted and remounted before the growfs > command. This problem (with help from the xfs guys) has been tracked > down to the device mapper not updating it's reported size until the > umount takes place. > > The code below tests this (aside: it would be nice to have this reported > in proc), and this example illustrates the problem(lvm_size is what I > compiled the below code as): > # ./lvm_size /dev/lvm_group_2/debmir > size = 11811160064 bytes, sector size = 512 bytes > > # lvextend -L +100M /dev/lvm_group_2/debmir > Extending logical volume debmir to 11.10 GB > Logical volume debmir successfully resized > > # ./lvm_size /dev/lvm_group_2/debmir > size = 11811160064 bytes, sector size = 512 bytes > > # umount /data/debmir > # ./lvm_size /dev/lvm_group_2/debmir > size = 11916017664 bytes, sector size = 512 bytes > > -Thanks > -Tupshin > > #include <stdio.h> > #include <fcntl.h> > #include <sys/ioctl.h> > > #define BLKGETSIZE64 _IOR(0x12,114,sizeof(unsigned long long)) > #define BLKSSZGET _IO(0x12,104) > > int main(int argc, char **argv) > { > unsigned long long size; > int ssize, fd, error; > > if (argc < 2) { > fprintf(stderr, "insufficent arguments\n"); > exit(1); > } > if ((fd = open(argv[1], O_RDONLY)) < 0) { > perror(argv[1]); > exit(1); > } > if (ioctl(fd, BLKGETSIZE64, &size) < 0) { > perror("BLKGETSIZE64"); > exit(1); > } > if (ioctl(fd, BLKSSZGET, &ssize) < 0) { > perror("BLKSSZGET"); > exit(1); > } > close(fd); > > printf("size = %lld bytes, sector size = %d bytes\n", size, ssize); > } > > > > > _______________________________________________ > > dm-devel@xxxxxxxxxxx > http://lists.sistina.com/mailman/listinfo/dm-devel