[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090120232242.GA16776@infradead.org>
Date: Tue, 20 Jan 2009 18:22:43 -0500
From: Christoph Hellwig <hch@...radead.org>
To: Christoph Hellwig <hch@...radead.org>,
Jacek Luczak <difrost.kernel@...il.com>,
Eric Sandeen <sandeen@...deen.net>,
LKML <linux-kernel@...r.kernel.org>,
xfs mailing list <xfs@....sgi.com>
Subject: Re: [PATCH] Re: [XFS] 2.6.29-rc2: XFS internal error
XFS_WANT_CORRUPTED_GOTO
On Wed, Jan 21, 2009 at 10:03:06AM +1100, Dave Chinner wrote:
> [XFS] Long btree pointers are still 64 bit on disk
>
> On 32 bit machines with CONFIG_LBD=n, XFS reduces the
> in memory size of xfs_fsblock_t to 32 bits so that it
> will fit within 32 bit addressing. However, the disk format
> for long btree pointers are still 64 bits in size.
>
> The recent btree rewrite failed to take this into account
> when initialising new btree blocks, setting sibling pointers
> to NULL and checking if they are NULL. Hence checking whether
> a 64 bit NULL was the same as a 32 bit NULL was failingi
> resulting in NULL sibling pointers failing to be detected
> correctly. This showed up as WANT_CORRUPTED_GOTO shutdowns
> in xfs_btree_delrec.
>
> Fix this by making all the comparisons and setting of long
> pointer btree NULL blocks to the disk format, not the
> in memory format. i.e. use NULLDFSBNO.
Thanks, this fixes the testcase for me.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists