Re: xfs_repair -d doesn't work

David Chinner
2006-09-11T01:10:38Z

On Mon, Sep 11, 2006 at 01:45:45AM +0200, Enrico Maria Crisostomo wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi.
>
> I'm running a slackware-current with xfsprogs-2.8.10_1. On some
> machine I ran many 2.6.17 kernel and one machine is showing the
> "directory problem": I cannot get rid of many "Filesystem "hda3": XFS
> internal error xfs_da_do_buf(2) at line 2212 of file
> fs/xfs/xfs_da_btree.c. Caller 0xe0ac57d9". As I'm now running
> 2.6.17.13 I think I'm at safe from this bug and the last thing to do
> is... repairing my root filesystem. Unfortunately xfs_repair -d and
> xfs_repair -n does not work, and it returns saying it could not
> initialize XFS library because the filesystem is mounted AND writable.
> What I did:
> - - remounted the file system read only: did not work, not even
> xfs_repair -n, which I expect to succeed always
> - - hacked /etc/mtab to change rw to ro: did not work, error is the same
> as before.

IIRC, we recently updated libxfs to look at /proc/mounts rather than
/etc/mtab to fix these sorts of problems.

As it is, to fix the "directory problem" you need a more recent
xfsprogs (2.8.11 IIRC), so I'd suggest the first thing to do is
upgrade your xfsprogs and try again.

> Can you suggest me some way to repair my file system

You should be able to boot to single user mode, remount the root
filesystem readonly and then "xfs_repair -d <dev>" to fix it. You
need to reboot after doing this....

Cheers,

Dave.
--
Dave Chinner
Principal Engineer
SGI Australian Software Group