xfs
[Top] [All Lists]

Re: bad fs - xfs_repair 3.01 crashes on it

To: Michael Monnerie <michael.monnerie@xxxxxxxxxxxxxxxxxxx>
Subject: Re: bad fs - xfs_repair 3.01 crashes on it
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Fri, 03 Jul 2009 13:34:48 -0500
Cc: xfs mailing list <xfs@xxxxxxxxxxx>
In-reply-to: <200907031320.48358@xxxxxx>
References: <200907031320.48358@xxxxxx>
User-agent: Thunderbird 2.0.0.22 (Macintosh/20090605)
Michael Monnerie wrote:
> Tonight our server rebooted, and I found in /var/log/warn that he was crying 
> a lot about xfs since June 7 already:
> 
> Jun  7 03:06:31 orion.i.zmi.at kernel: Filesystem "dm-0": corrupt inode 
> 3857051697 ((a)extents = 5).  Unmount and run xfs_repair.

...

> But XFS didn't go offline, so nobody found this messages. There are a lot of 
> them.
> They obviously are generated by the nightly "xfs_fsr -v -t 7200" which we run
> since then. It would have been nice if xfs_fsr could have displayed
> a message, so we would have received the cron mail. (But it got killed
> by the kernel, that's a good excuse)

I'll have to think about why this didn't shut down the fs.  There are
just a few that don't.

> Anyway, so I went to xfs_repair (3.01) and got this:
> 
> Phase 3 - for each AG...
>         - scan and clear agi unlinked lists...
>         - process known inodes and perform inode discovery...
> [snip]
>         - agno = 14
> local inode 3857051697 attr too small (size = 3, min size = 4)
> bad attribute fork in inode 3857051697, clearing attr fork
> clearing inode 3857051697 attributes
> cleared inode 3857051697
> [snip]
> Phase 4 - check for duplicate blocks...
> [snip]
>         - agno = 15
> data fork in regular inode 3857051697 claims used block 537147998
> xfs_repair: dinode.c:2108: process_inode_data_fork: Assertion `err == 0' 
> failed.
> 
> And then xfs_repair crashes out, without having repaired. I attached the full 
> xfs_repair log here, and http://zmi.at/x/xfs.metadump.data1.bz2
> the metadump.

Thanks for the metadump image, I'll try to take a look.

-Eric

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