[Top] [All Lists]

Re: "No such file or directory" (still) (was Re: file corruption during

To: "Ralf G. R. Bergs" <rabe@xxxxxxxxxxxxxx>
Subject: Re: "No such file or directory" (still) (was Re: file corruption during emacs build on XFS logical volume
From: Steve Lord <lord@xxxxxxx>
Date: 08 Jan 2002 09:19:50 -0600
Cc: Linux XFS <linux-xfs@xxxxxxxxxxx>
In-reply-to: <E16NxrX-0003qA-00@ADSL-Bergs.RZ.RWTH-Aachen.DE>
References: <E16NxrX-0003qA-00@ADSL-Bergs.RZ.RWTH-Aachen.DE>
Sender: owner-linux-xfs@xxxxxxxxxxx
On Tue, 2002-01-08 at 09:08, Ralf G. R. Bergs wrote:
> On Tue, 08 Jan 2002 08:57:40 -0600, Steve Lord wrote:
> >OK, so now go into xfs_db again, go back to the same inode and
> >use the bmap command this will print the locations where there
> >are blocks in the directory, it should look a little like this:
> Ok, here you are:
> Ok, what do you want me to do now?
> Thanks,
> Ralf

I think I am starting to get the picture here. The blocks we are looking
at here are hash values used to lookup the individual blocks containing
the name/inode pairs. A directory search generates a hash from the name
and then walks down to the leaf block of the btree which contains it,
from here we get an address - which I think is in 8 byte chunks into the
start of the directory.

This output:

dir 1426370585 block 8388614 extra leaf entry 62b7eea7 2a89
dir ino 1426370585 missing leaf entry for 62bdaea7/2a89

Reports that there is a leaf entry 62b7eea7 which has no inode
in the directory, and there is an inode with no hash value. They
are both at offset 0x2a89. If we multiply this by 8 we get 87112
decimal which should be in block 21 of the directory. If you go
back to the inode and do

        dblock 21

what do you get, and is your missing name in the output here?



Steve Lord                                      voice: +1-651-683-3511
Principal Engineer, Filesystem Software         email: lord@xxxxxxx

<Prev in Thread] Current Thread [Next in Thread>