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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.