Re: e2fsck doesn't repair broken ext4

Previous thread: [PATCH 1/2] ext4/jbd2: fix io-barrier logic in case of external journal by Dmitry Monakhov on Friday, March 12, 2010 - 10:26 am. (9 messages)

Next thread: Re: bug in ext3 code causing OOM error on systems with small memory by Andrew Morton on Friday, March 12, 2010 - 2:57 pm. (3 messages)
From: Jörg
Date: Friday, March 12, 2010 - 1:54 pm

Hi,

after a system crash, I had a problem with ext4 that e2fsck didn't fix. I
don't know if e2fsck or ext4 was wrong. In the end, I had to remove the
broken directory, which succeed and solved my problem.

These are the steps I did:

01 % e2fsck -fy /dev/root
02 % dumpe2fsck -x /dev/root
03 % e2image -r /dev/root
04 % apt-get install
05 % dmesg
06 % dumpe2fs -x /dev/root
07 % e2image -r /dev/root
08 % e2fsck -y /dev/root
09 % dumpe2fs -x /dev/root
10 % e2image -r /dev/root
11 % apt-get install
12 % dmesg

I've put the output and images of all these commands at
<http://alioth.debian.org/~jo-guest/ext4/>. I hope they help you somehow.

Regards, J=F6rg.
--=20
Eine Blume geht =FCber eine Wiese, sieht einen sch=F6nen Menschen und rei=
=DFt
ihm den Kopf ab.
From: Eric Sandeen
Date: Friday, March 12, 2010 - 4:06 pm

Great, thanks for gathering the images.

What version of e2fsprogs were you using?


--

From: Eric Sandeen
Date: Friday, March 12, 2010 - 5:03 pm

Ok never mind on that.  recent release has the same problem.

so this is 2.6.33-rc7 ...

you had:

[  347.673207] EXT4-fs error (device hda4): make_indexed_dir: invalid rec_len for '..' in inode 425166
(wish we'd print out the actual bad rec_len there ...)

# mount -o loop 03-e2image-r  mount/
# find mount/ -inum 425166
# mount/usr/share/ri/1.8/system/String
# touch mount/usr/share/ri/1.8/system/String/foobar
touch: cannot touch `mount/usr/share/ri/1.8/system/String/foobar': Input/output error
# dmesg | tail -n 1
EXT4-fs error (device loop0): make_indexed_dir: invalid rec_len for '..' in inode 425166
# debugfs 03-e2image-r

debugfs:  ls -l <425166>
 425166   40755 (2)      0      0    4096 11-Mar-2010 05:37 .
 424052   40755 (2)      0      0    4096  1-Feb-2010 16:53 ..
      0       0 (2)      0      0       0                   ..
      0       0 (2)      0      0       0                   .
 426379  100644 (1)      0      0    8494 10-Jan-2010 09:01 cdesc-String.yaml
 426380  100644 (1)      0      0     293 10-Jan-2010 09:01 new-c.yaml
...

Not sure what's going on with the duplicate 0-inode entries there yet.

-Eric

--

From: Jörg Sommer
Date: Friday, April 16, 2010 - 3:11 am

Hi,


I would like to ask, if there was any result from this issue? Did you
found a bug in e2fsck?

Bye, Jörg.
-- 
< Mr X.> jo: contact an admin to mount it for you
< jo> The admin is not, well how should I say it, he isn't very familiar with
      the system. What should I tell my admin, what he should do?
< Mr X.> taking a sun solaris administration course.
From: Eric Sandeen
Date: Friday, April 16, 2010 - 8:22 am

I'm sorry, I haven't made further progress on this yet.


--

Previous thread: [PATCH 1/2] ext4/jbd2: fix io-barrier logic in case of external journal by Dmitry Monakhov on Friday, March 12, 2010 - 10:26 am. (9 messages)

Next thread: Re: bug in ext3 code causing OOM error on systems with small memory by Andrew Morton on Friday, March 12, 2010 - 2:57 pm. (3 messages)