On Wed, Mar 18, 2009 at 02:42:02PM +0100, ext Jan Kara wrote: > > On Tue, Mar 17, 2009 at 11:40:19AM +0200, Denis Karpov wrote: > > Jan's fixes are here: > > http://marc.info/?l=linux-ext4&m=123731584711382&w=2 > > It would be interesting to try them, and if they don't work maybe > > he's also interested so I cc'ed him. Hello, I've re-run the tests (with Jan's patches and also Nick's "fs: new inode i_state corruption fix" patch). > > > In both cases I saw some complains from JBD/JBD2: > > > JBD: Detected IO errors while flushing file data on > Yes, my patches fix exactly this problem. So please try running with > them. I'm not sure about that HTREE corruption you see during fsck. That > seems to be a separate issue. The issue with JBD seems to be gone. But problem with HTREE being corrupted still remains (see attached logs). Denis
------------------------------------------------------------- Cycle 26 Fri Mar 20 09:23:50 EDT 2009 Mounting [ 907.443733] EXT3 FS on ram0, internal journal [ 907.448199] EXT3-fs: mounted filesystem with ordered data mode. [ 907.448529] kjournald starting. Commit interval 5 seconds Removing old fsstress data Starting fsstress Sleeping 30 seconds seed = 1237468251 Stopping fsstress 5656 ttyS0 00:00:00 fsstress_ext3 5659 ttyS0 00:00:26 fsstress_ext3 5660 ttyS0 00:00:25 fsstress_ext3 5661 ttyS0 00:00:25 fsstress_ext3 ./brd_test_ext3.sh: line 37: 5656 Terminated `pwd`/fsstress_ext3 - d $TESTDIR/work -p 3 -l 0 -n 100000000 Unmounting Checking /dev/ram0: HTREE directory inode 82 has an invalid root node. HTREE INDEX CLEARED. /dev/ram0: Entry 'c17e8' in /work/p1/d2/d99 (82) has an incorrect filetype (was 3, should be 1). /dev/ram0: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. (i.e., without -a or -p options) # fsck.ext3 /dev/ram0 e2fsck 1.41.3 (12-Oct-2008) /dev/ram0 contains a file system with errors, check forced. Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Entry 'c17e8' in /work/p1/d2/d99 (82) has an incorrect filetype (was 3, should b e 1). Fix<y>? yes Entry 'fdab' in /work/p1/d2/d99 (82) has an incorrect filetype (was 1, should be 7). Fix<y>? yes Entry 'c17fa' in /work/p1/d2/d99 (82) has an incorrect filetype (was 3, should be 1). Fix<y>? yes Entry 'da0' in /work/p1/d2/d99 (82) is a link to directory /work/p1/d2/d99/da0 ( 238). Clear<y>? yes Pass 3: Checking directory connectivity Pass 4: Checking reference counts Inode 83 ref count is 9, should be 10. Fix<y>? yes Inode 94 ref count is 3, should be 4. Fix<y>? yes Inode 99 ref count is 9, should be 10. Fix<y>? yes ... Inode 1018 ref count is 2, should be 3. Fix<y>? yes Inode 1024 ref count is 1, should be 2. Fix<y>? yes Pass 5: Checking group summary information /dev/ram0: ***** FILE SYSTEM WAS MODIFIED ***** /dev/ram0: 1024/1024 files (12.0% non-contiguous), 4096/4096 blocks
------------------------------------------------------------- Cycle 5 Fri Mar 20 09:17:50 EDT 2009 Mounting Removing old fsstress data Starting fsstress Sleeping 30 seconds seed = 1237604365 Stopping fsstress 5370 pts/0 00:00:00 fsstress_ext4 5373 pts/0 00:00:19 fsstress_ext4 5374 pts/0 00:00:20 fsstress_ext4 5375 pts/0 00:00:19 fsstress_ext4 ./brd_test_ext4.sh: line 36: 5370 Terminated `pwd`/fsstress_ext4 -d $TESTDIR/work -p 3 -l 0 -n 100000000 Unmounting Checking /dev/ram1: HTREE directory inode 165 has an invalid root node. HTREE INDEX CLEARED. /dev/ram1: HTREE directory inode 272 has an invalid root node. HTREE INDEX CLEARED. /dev/ram1: Entry 'c363' in /work/p2/d2/de/d5f/d80/d616 (272) has an incorrect filetype (was 3, should be 1). /dev/ram1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. (i.e., without -a or -p options) # fsck.ext4 /dev/ram1 e2fsck 1.41.3 (12-Oct-2008) /dev/ram1 contains a file system with errors, check forced. Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Entry 'c363' in /work/p2/d2/de/d5f/d80/d616 (272) has an incorrect filetype (was 3, should be 1). Fix<y>? yes Entry 'c10b5' in /work/p2/d2/de/d37 (165) has an incorrect filetype (was 3, should be 1). Fix<y>? yes Entry 'f164' in /work/p2/d2/de/d37 (165) has an incorrect filetype (was 1, should be 3). Fix<y>? yes Entry 'f104e' in /work/p2/d2/de/d37 (165) has an incorrect filetype (was 1, should be 2). Fix<y>? yes Entry 'deaa' in /work/p2/d2/de/d5f/d80/d616 (272) is a link to directory /work/p2/d2/de/d5f/d80/d616/deaa (819). Clear<y>? yes Entry 'd155a' in /work/p2/d2/de/d37 (165) is a link to directory /work/p2/d2/de/d37/d155a (434). Clear<y>? yes Pass 3: Checking directory connectivity Pass 4: Checking reference counts Inode 25 ref count is 6, should be 7. Fix<y>? yes Inode 48 ref count is 1, should be 2. Fix<y>? yes ... Inode 1003 ref count is 3, should be 4. Fix<y>? yes Inode 1004 ref count is 1, should be 2. Fix<y>? yes Pass 5: Checking group summary information /dev/ram1: ***** FILE SYSTEM WAS MODIFIED ***** /dev/ram1: 1024/1024 files (20.5% non-contiguous), 4096/4096 blocks