kernel 2.2.13, ext2fs directory problems w/large filesystems

Thomas Davis (tadavis@lbl.gov)
Tue, 04 Jan 2000 10:30:01 -0800


Well, after running for 30 days, a system here with a very large ext2 fs
on it (500gb), started to get the following errors:

EXT2-fs error (device rz(116,3)): ext2_add_entry: bad entry in directory
#245761: rec_len % 4 != 0 - offset=163840, inode=909454903,
rec_len=8242, name_len=51 : no inode in rename or err: -2.
EXT2-fs error (device rz(116,3)): ext2_add_entry: bad entry in directory
#262145: rec_len % 4 != 0 - offset=180224, inode=3781926183,
rec_len=52142, name_len=238 : no inode in rename or err: -2.

(there's more, I just cut the first few)

This directory was also NFS exported, and when ever you tried to move a
file into the directory, you got an error. The kernel on the NFS server
spit out the previous message.

Now, this occurred while the system was running, and it started off as a
clean filesystem.

fsck.ext2 did fix it; however, we ended up a with:

[root@pdsfdv09 tdavis]# /sbin/fsck -Ca /dev/rza3
Parallelizing fsck version 1.17 (26-Oct-1999)
e2fsck 1.17, 26-Oct-1999 for EXT2 FS 0.5b, 95/08/09
/dev/rza3 contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Directory inode 606209, block 44, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 606209, block 45, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 245761, block 40, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 262145, block 44, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 294913, block 44, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 606209, block 46, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 245761, block 41, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 229377, block 44, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 589825, block 44, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 262145, block 45, offset 0: directory corrupted
Salvage<y>? yes
Directory inode 294913, block 45, offset 0: directory corrupted
Salvage<y>? yes

Pass 3: Checking directory connectivity
Unattached inode 672981
Connect to /lost+found<y>? yes
Inode 672981 ref count is 2, should be 1. Fix<y>? yes
Unattached inode 673110
Connect to /lost+found<y>? yes
Inode 673110 ref count is 2, should be 1. Fix<y>? yes
Unattached inode 674730
Connect to /lost+found<y>? yes
Inode 674730 ref count is 2, should be 1. Fix<y>? yes
Unattached inode 674938
Connect to /lost+found<y>? yes
<snipped due to lenght>

I ended up with about 1000 files in lost+found...

Any ideas?

-- 
------------------------+--------------------------------------------------
Thomas Davis		| PDSF Project Leader
tadavis@lbl.gov		| 
(510) 486-4524		| "Only a petabyte of data this year?"

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/