Re: [CFT][PATCH] ext2 directories in pagecache

From: Andreas Dilger (adilger@turbolinux.com)
Date: Thu Sep 28 2000 - 13:28:51 EST


Marco writes:
> On Thu, Sep 28, 2000 at 11:51:02AM -0400, Alexander Viro wrote:
> > On Thu, 28 Sep 2000, Marko Kreen wrote:
> > > On Tue, Sep 26, 2000 at 05:29:27PM -0400, Alexander Viro wrote:
> > >
> > > EXT2-fs error (device sd(8,6)): ext2_add_entry: bad entry in directory
> > > #28699: rec_len is smaller than minimal - offset=1024, inode=0,
> > > rec_len=0, name_len=0
> >
> > BTW, did fsck complain about that directory?
> >
> It seemed not, all errors were for unattached inodes...
> When creating a new database PostgreSQL creates new dir under
> /var/lib/postgres/data/base and that did not succeed after fsck too.

It may be that the next block in the directory is not being written to
disk. Any inodes created in a directory, whose direntries are in the
second block will be "unattached" at fsck time if the second dir block
is not written to disk, because no directory is referencing these inodes.

This would also explain why the direntry offset is pointing past the
end of the first dir block, because the next block was added at the time
the new file was created, but then later lost.

Cheers, Andreas

-- 
Andreas Dilger  \ "If a man ate a pound of pasta and a pound of antipasto,
                 \  would they cancel out, leaving him still hungry?"
http://www-mddsp.enel.ucalgary.ca/People/adilger/               -- Dogbert
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Sep 30 2000 - 21:00:22 EST