[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#738758: linux-image-3.12-1-amd64: ext4 can't properly handle ext2 filesystems created for GNU/Hurd



Package: src:linux
Version: 3.12.9-1
Severity: normal

Since CONFIG_EXT4_USE_FOR_EXT23 has been enabled, ext4 module can't properly
handle ext2 created for Hurd causing data corruption.
ext2 module would do its job.

Reproducible with:

dd if=/dev/zero of=test.fs count=10000
echo y|mkfs.ext2 -o hurd test.fs
mount -t ext2 test.fs /mnt
touch /mnt/bug0000
umount /mnt
fsck.ext2 -fp test.fs

Attached output with kernel 3.10-3 and 3.12-1.

+ dd if=/dev/zero of=test.fs count=10000
10000+0 records in
10000+0 records out
5120000 bytes (5.1 MB) copied, 0.0459037 s, 112 MB/s
+ echo y
+ mkfs.ext2 -o hurd test.fs
mke2fs 1.42.9 (28-Dec-2013)
test.fs is not a block special device.
Proceed anyway? (y,n) Discarding device blocks:          done                            
Filesystem label=
OS type: Hurd
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1280 inodes, 1250 blocks
62 blocks (4.96%) reserved for the super user
First data block=0
1 block group
32768 blocks per group, 32768 fragments per group
1280 inodes per group

Allocating group tables: 0/1   done                            
Writing inode tables: 0/1   done                            
Writing superblocks and filesystem accounting information: 0/1   done

+ mount -t ext2 test.fs /mnt
+ touch /mnt/bug0000
+ umount /mnt
+ fsck.ext2 -fp test.fs
test.fs: 12/1280 files (0.0% non-contiguous), 50/1250 blocks
+ dd if=/dev/zero of=test.fs count=10000
10000+0 records in
10000+0 records out
5120000 bytes (5.1 MB) copied, 0.0227442 s, 225 MB/s
+ echo y
s.ext2 -o hurd test.fs
mke2fs 1.42.9 (28-Dec-2013)
test.fs is not a block special device.
Proceed anyway? (y,n) Discarding device blocks:          done                            
Filesystem label=
OS type: Hurd
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1280 inodes, 1250 blocks
62 blocks (4.96%) reserved for the super user
First data block=0
1 block group
32768 blocks per group, 32768 fragments per group
1280 inodes per group

Allocating group tables: 0/1   done                            
Writing inode tables: 0/1   done                            
Writing superblocks and filesystem accounting information: 0/1   done

+ mount -t ext2 test.fs /mnt
+ touch /mnt/bug0000
+ umount /mnt
+ fsck.ext2 -fp test.fs
test.fs: Inode 2, i_blocks is 8, should be 16.  FIXED.
test.fs: Inode 12, i_blocks is 0, should be 8.  FIXED.
test.fs: Duplicate or bad block in use!
test.fs: Multiply-claimed block(s) in inode 2: 1
test.fs: Multiply-claimed block(s) in inode 12: 1
test.fs: (There are 2 inodes containing multiply-claimed blocks.)

test.fs: File / (inode #2, mod time Wed Feb 12 19:02:45 2014) 
  has 1 multiply-claimed block(s), shared with 2 file(s):
test.fs: 	<filesystem metadata>
test.fs: 	/bug0000 (inode #12, mod time Wed Feb 12 19:02:45 2014)
test.fs: 

test.fs: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
	(i.e., without -a or -p options)

Reply to: