From: Eric Sandeen <sandeen@sandeen.net>
To: Martin Michlmayr <tbm@cyrius.com>
Cc: Tobias Frost <tobi@coldtobi.de>,
linux-kernel@vger.kernel.org, debian-arm@lists.debian.org,
xfs@oss.sgi.com
Subject: Re: XFS filesystem corruption on the arm(el) architecture
Date: Fri, 17 Oct 2008 09:15:43 -0500 [thread overview]
Message-ID: <48F89E0F.6030307@sandeen.net> (raw)
In-Reply-To: <20081017070109.GA30726@deprecation.cyrius.com>
Martin Michlmayr wrote:
> * Eric Sandeen <sandeen@sandeen.net> [2008-10-16 17:13]:
>> So is this a regression? did it used to work? If so, when? :)
>
> The original report was with 2.6.18 but that was with the old ABI:
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=423562
> I just installed a 2.6.22 kernel with EABI and I can also trigger
> the bug. So it's not a (recent) regression.
>
>> What's a little odd is that the buffer it dumped out looks like the
>> beginning of a perfectly valid superblock for your filesystem
>> (magic, block size, and block count all match). If you printk the
>> "bno" variable right around line 2106 in xfs_da_btree.c, can you see
>> what you get?
>
> bno is 0.
Ok, that's a little odd. (correlates with the "bad" magic that was
seen, because block 0 is the superblock, but doesn't make sense because
we were trying to read a directory leaf block, in theory)
If you unmount & remount, does the ls work then?
>> creating an xfs_metadump of the filesystem for examination on a
>> non-arm box might also be interesting.
>
> http://www.cyrius.com/tmp/dump5
> (11 MB)
Thanks.
xfs_repair on x86 shows no errors; however it won't mount normally (bad
log clientid) - but mount -o norecovery,ro and subsequent ls works fine
(at first I thought filenames were badly scrambled but then remembered
that xfs_metadump does this by default ;))
The remaining problem that I know of on some arm architectures is a vmap
cache aliasing problem that usually shows up as log corruption; that may
explain the bad clientid thing but not sure why we're reading block 0 above.
Do you know what cachepolicy you're booted with? If it's writeallocate,
you might try cachepolicy=writeback, otherwise try cachepolicy=uncached
(which will be horribly slow) and see if the problem goes away or not;
it'd be a clue.
-Eric
next prev parent reply other threads:[~2008-10-17 14:15 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-01 20:38 XFS filesystem corruption on the arm(el) architecture Tobias Frost
2008-10-02 0:45 ` Dave Chinner
2008-10-02 0:56 ` Eric Sandeen
2008-10-02 1:17 ` Eric Sandeen
2008-10-16 21:25 ` Martin Michlmayr
2008-10-16 22:13 ` Eric Sandeen
2008-10-17 7:01 ` Martin Michlmayr
2008-10-17 9:46 ` Gaudenz Steinlin
2008-10-17 13:49 ` Eric Sandeen
2008-10-18 13:11 ` Tobias Frost
2008-10-18 19:48 ` Kirill A. Shutemov
2008-10-18 20:09 ` Christoph Hellwig
2008-10-18 20:17 ` Kirill A. Shutemov
2008-10-17 14:15 ` Eric Sandeen [this message]
2008-10-18 8:57 ` Martin Michlmayr
2008-10-18 14:48 ` Eric Sandeen
2008-10-19 1:48 ` Dave Chinner
2008-10-19 3:06 ` Eric Sandeen
2008-10-19 9:07 ` Christoph Hellwig
2008-10-19 16:22 ` Lennert Buytenhek
2008-10-19 5:12 ` Martin Michlmayr
2008-10-02 1:42 ` Eric Sandeen
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=48F89E0F.6030307@sandeen.net \
--to=sandeen@sandeen.net \
--cc=debian-arm@lists.debian.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tbm@cyrius.com \
--cc=tobi@coldtobi.de \
--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