On Tue, Feb 11, 2014 at 01:54:22PM -0600, Eric Sandeen wrote:
> On 2/10/14, 9:14 PM, Eric Sandeen wrote:
> > We want to distinguish between corruption and CRC errors.
> > In addition, the full stack trace on verifier errors
> > seems less than helpful; it looks more like an oops than
> > corruption.
> >
> > Create a new function to specifically alert the user to
> > verifier errors, which can differentiate between
> > EFSCORRUPTED and CRC mismatches. It doesn't dump stack
> > unless the xfs error level is turned up high.
> >
> > Define a new error message (EFSBADCRC) to clearly identify
> > CRC errors. (Defined to EILSEQ, bad byte sequence)
>
> So, this now looks like:
>
> [259116.148375] XFS (loop0): Metadata corruption detected at
> xfs_sb_read_verify+0x118/0x150 [xfs], block 0x0. Unmount and run xfs_repair
> [259116.160345] ffff88022bab0000: 58 46 53 42 00 00 10 00 00 00 00 00 00 04
> 00 00 XFSB............
> [259116.169109] ffff88022bab0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 00 00 ................
> [259116.177872] ffff88022bab0020: 73 df 07 64 a6 50 4d 5b 8d eb 2c 06 a1 ed
> e3 5c s..d.PM[..,....\
> [259116.186638] ffff88022bab0030: 00 00 00 00 00 02 00 04 00 00 00 00 00 00
> 00 80 ................
> [259116.195413] XFS (loop0): SB validate failed with error 117.
>
> when something fails.
>
> We should probably put a period after "xfs_repair" and also print
> one more line about what the hex spew means - "XFS (loop0): first
> 64 bytes of corrupted metadata buffer:" or something similar.
Yeah, I think we need to split that long line, too. i.e:
XFS (loop0): Metadata corruption detected at xfs_sb_read_verify+0x118/0x150
[xfs], block 0x0.
XFS (loop0): Please unmount and run xfs_repair.
XFS (loop0): First 64 bytes of corrupted metadata buffer contains:
ffff88022bab0000: 58 46 53 42 00 00 10 00 00 00 00 00 00 04 00 00
XFSB............
ffff88022bab0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
................
ffff88022bab0020: 73 df 07 64 a6 50 4d 5b 8d eb 2c 06 a1 ed e3 5c
s..d.PM[..,....\
ffff88022bab0030: 00 00 00 00 00 02 00 04 00 00 00 00 00 00 00 80
................
XFS (loop0): SB validate failed with error 117.
Cheers,
Dave.
--
Dave Chinner
david@xxxxxxxxxxxxx
|