I don't know how this can hang your system, but instead of doing this: losetup -o $((512 * 63)) /dev/loop1 /dev/loop0 You could use kpartx: kpartx -a /dev/loop0 You are going to find in /dev/mapper your loop0p1: Here you can find an example: [root@shuVak ~]# dd if=/dev/zero of=caca bs=1024k count=100 100+0 records in 100+0 records out 104857600 bytes (105 MB) copied, 0.656977 seconds, 160 MB/s [root@shuVak ~]# losetup /dev/loop0 caca [root@shuVak ~]# fdisk /dev/loop0 Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) Command (m for help): p Disk /dev/loop0: 104 MB, 104857600 bytes 255 heads, 63 sectors/track, 12 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-12, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-12, default 12): Using default value 12 Command (m for help): p Disk /dev/loop0: 104 MB, 104857600 bytes 255 heads, 63 sectors/track, 12 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/loop0p1 1 12 96358+ 83 Linux Command (m for help): t Selected partition 1 Hex code (type L to list codes): 8e Changed system type of partition 1 to 8e (Linux LVM) Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 22: Invalid argument. The kernel still uses the old table. The new table will be used at the next reboot. Syncing disks. [root@shuVak ~]# ls /dev/loop* loop0 loop1 loop2 loop3 loop4 loop5 loop6 loop7 [root@shuVak ~]# kpartx -a /dev/loop0 [root@shuVak ~]# ls /dev/mapper/loop0p1 /dev/mapper/loop0p1 regards, Jordi On Fri, Oct 24, 2008 at 3:16 AM, Carlo Wood <carlo@xxxxxxxxxx> wrote: > Hiya, don't know where else to report this. Please > correct me if this isn't the right place. > > I just ran into a serious bug :(( > > We were trying to create a virtual filesystem > in an image (file) of around 238 GB. > > Let the files name be foo.img, then we did: > > losetup /dev/loop0 foo.img > > and then used fdisk /dev/loop0 to create this partition > table: > > uxley:~>fdisk -lu /dev/loop0 > > Disk /dev/loop0: 238.3 GB, 238370684928 bytes > 255 heads, 63 sectors/track, 28980 cylinders, total 465567744 sectors > Units = sectors of 1 * 512 = 512 bytes > > Device Boot Start End Blocks Id System > /dev/loop0p1 * 63 401624 200781 83 Linux > /dev/loop0p2 401625 16048934 7823655 83 Linux > /dev/loop0p3 16048935 21928724 2939895 82 Linux swap / Solaris > /dev/loop0p4 21928725 465563699 221817487+ 5 Extended > /dev/loop0p5 21928788 27808514 2939863+ 83 Linux > /dev/loop0p6 27808578 47359619 9775521 83 Linux > /dev/loop0p7 47359683 57143204 4891761 83 Linux > /dev/loop0p8 57143268 465563699 204210216 83 Linux > > Next we did: > > losetup -o $((512 * 63)) /dev/loop1 /dev/loop0 > > which should make the first partition available under /dev/loop1 > (this certainly works if that partition already contains a fs, > we then can mount it). > > Finally, I wanted to create a filesystem and ran the following > command: > > uxley:~>mke2fs -j -L "/boot" /dev/loop1 > mke2fs 1.40-WIP (14-Nov-2006) > Filesystem label=/boot > OS type: Linux > Block size=4096 (log=2) > Fragment size=4096 (log=2) > 29097984 inodes, 58195960 blocks > 2909798 blocks (5.00%) reserved for the super user > First data block=0 > Maximum filesystem blocks=0 > 1776 block groups > 32768 blocks per group, 32768 fragments per group > 16384 inodes per group > Superblock backups stored on blocks: > 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, > 4096000, 7962624, 11239424, 20480000, 23887872 > > Writing inode tables: 306/1776 > > > Here the machine completely halted/crashed. I don't know what > happened, because it's a remote machine. > > The writing of the inode table started very fast, but it was > already slowing down the last few - and completely stopped > at 306, which was 12 minutes ago (my ssh connection to the > machine still didn't time out, weird enough). > > I can still ping the machine I see. > > Note that mke2fs says: 29097984 inodes, 58195960 blocks > That is 58195960 * 4096 = 238370652160 the full size of > the image file?!? > > This partition is only 200MB though! > > Did I do something very stupid, or is this a bug in mke2fs ? > > -- > Carlo Wood <carlo@xxxxxxxxxx> > > _______________________________________________ > Ext3-users mailing list > Ext3-users@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/ext3-users > -- Jordi _______________________________________________ Ext3-users mailing list Ext3-users@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/ext3-users