From: Dave Chinner <david@fromorbit.com>
To: Ole Tange <tange@binf.ku.dk>
Cc: xfs@oss.sgi.com
Subject: Re: xfs_repair segfaults
Date: Sat, 2 Mar 2013 07:53:05 +1100 [thread overview]
Message-ID: <20130301205305.GD23616@dastard> (raw)
In-Reply-To: <CANU9nTkkEd61UsM+KngGzMzXVXdOa2oXOPtmqN4xGaPuEBN_nQ@mail.gmail.com>
On Fri, Mar 01, 2013 at 01:24:36PM +0100, Ole Tange wrote:
> On Fri, Mar 1, 2013 at 12:17 PM, Dave Chinner <david@fromorbit.com> wrote:
> > On Thu, Feb 28, 2013 at 04:22:08PM +0100, Ole Tange wrote:
> :
> >> I forced a RAID online. I have done that before and xfs_repair
> >> normally removes the last hour of data or so, but saves everything
> >> else.
> >
> > Why did you need to force it online?
>
> More than 2 harddisks went offline. We have seen that before and it is
> not due to bad harddisks. It may be due to driver/timings/controller.
I thought that might be the case. What filesystem errors occurred
when the srives went offline?
> >> /usr/local/src/xfsprogs-3.1.10/repair# ./xfs_repair -n /dev/md5p1
> >> Phase 1 - find and verify superblock...
> >> Phase 2 - using internal log
> >> - scan filesystem freespace and inode maps...
> >> flfirst 232 in agf 91 too large (max = 128)
> >
> > Can you run:
> >
> > # xfs_db -c "agf 91" -c p /dev/md5p1
> >
> > And post the output?
>
> # xfs_db -c "agf 91" -c p /dev/md5p1
> xfs_db: cannot init perag data (117)
Interesting. It's detecting corrupt AG headers.
> magicnum = 0x58414746
> versionnum = 1
> seqno = 91
> length = 268435200
> bnoroot = 295199
> cntroot = 13451007
> bnolevel = 2
> cntlevel = 2
> flfirst = 232
> fllast = 32
> flcount = 191
That implies that the free list is actually 232+191-32 = 391
entries long. That doesn't add up any way I look at it. both the
flfirst and flcount fields look wrong here, which rules out a simple
bit error as the problem. I can't see how these values would have
been written by XFS as they are out of range for 512 byte sector
AGFL:
be32_add_cpu(&agf->agf_flfirst, 1);
xfs_trans_brelse(tp, agflbp);
if (be32_to_cpu(agf->agf_flfirst) == XFS_AGFL_SIZE(mp))
agf->agf_flfirst = 0;
So I suspect that something more than just disks going off line here
went wrong here, as I've never seen this sort of corruption before...
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2013-03-01 20:53 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-28 15:22 xfs_repair segfaults Ole Tange
2013-02-28 18:48 ` Eric Sandeen
2013-03-01 9:37 ` Ole Tange
2013-03-01 16:46 ` Eric Sandeen
2013-03-04 9:00 ` Ole Tange
2013-03-04 15:20 ` Eric Sandeen
2013-03-08 10:21 ` Ole Tange
2013-03-08 20:32 ` Eric Sandeen
2013-03-12 10:41 ` Ole Tange
2013-03-12 14:40 ` Eric Sandeen
2013-03-12 11:37 ` Ole Tange
2013-03-12 14:47 ` Eric Sandeen
2013-03-01 11:17 ` Dave Chinner
2013-03-01 12:24 ` Ole Tange
2013-03-01 20:53 ` Dave Chinner [this message]
2013-03-04 9:03 ` Ole Tange
2013-03-04 23:23 ` Dave Chinner
2013-03-08 10:09 ` Ole Tange
2013-03-01 22:14 ` Eric Sandeen
2013-03-01 22:31 ` Dave Chinner
2013-03-01 22:32 ` Eric Sandeen
2013-03-01 23:55 ` Eric Sandeen
2013-03-04 12:47 ` Ole Tange
2013-03-04 15:17 ` Eric Sandeen
2013-03-04 23:11 ` Dave Chinner
-- strict thread matches above, loose matches on Subject: below --
2013-05-06 12:06 Xfs_repair segfaults Filippo Stenico
2013-05-06 14:34 ` Eric Sandeen
2013-05-06 15:00 ` Filippo Stenico
[not found] ` <CADNx=Kv0bt3fNGW8Y24GziW9MOO-+b7fBGub4AYP70b5gAegxw@mail.gmail.com>
2013-05-07 13:20 ` Eric Sandeen
2013-05-07 13:36 ` Filippo Stenico
2013-05-07 18:20 ` Filippo Stenico
2013-05-08 17:30 ` Filippo Stenico
2013-05-08 17:42 ` Filippo Stenico
2013-05-08 23:39 ` Dave Chinner
2013-05-09 15:11 ` Filippo Stenico
2013-05-09 17:22 ` Filippo Stenico
2013-05-09 22:39 ` Dave Chinner
[not found] ` <CADNx=KuQjMNHUk6t0+hBZ5DN6s=RXqrPEjeoSxpBta47CJoDgQ@mail.gmail.com>
2013-05-10 11:00 ` Filippo Stenico
2013-05-09 22:37 ` Dave Chinner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130301205305.GD23616@dastard \
--to=david@fromorbit.com \
--cc=tange@binf.ku.dk \
--cc=xfs@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox