Internal error xfs_sb_read_verify at line 726
Markus Trippelsdorf
markus at trippelsdorf.de
Mon May 6 13:30:20 CDT 2013
On 2013.05.06 at 12:04 -0500, Eric Sandeen wrote:
> On 5/6/13 6:27 AM, Markus Trippelsdorf wrote:
> > Today I accidentally tried to mount my backup disk at /dev/sdc instead
> > of /dev/sdc1 and this is what happened:
> >
> > ...
> > EXT4-fs (sdc): VFS: Can't find ext4 filesystem
> > FAT-fs (sdc): bogus number of reserved sectors
> > FAT-fs (sdc): Can't find a valid FAT filesystem
> > FAT-fs (sdc): bogus number of reserved sectors
> > FAT-fs (sdc): Can't find a valid FAT filesystem
> > ISOFS: Unable to identify CD-ROM format.
> > XFS (sdc): bad magic number
> > ffff8800db620000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> > ffff8800db620010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> > ffff8800db620020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> > ffff8800db620030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> > XFS (sdc): Internal error xfs_sb_read_verify at line 726 of file fs/xfs/xfs_mount.c. Caller 0xffffffff8119e5cd
>
> This seems to be a recent regression.
>
> Comments above xfs_sb_quiet_read_verify() indicate that this behavior is
> to be avoided:
>
> * We may be probed for a filesystem match, so we may not want to emit
> * messages when the superblock buffer is not actually an XFS superblock.
>
> and it checks for proper magic prior to all the chattiness above int
> that function.
>
> The superblock read is suposed to choose whether to be noisy or not,
> in xfs_readsb():
>
The following patch fixes the issue for me:
diff --git a/fs/xfs/xfs_mount.c b/fs/xfs/xfs_mount.c
index f6bfbd7..db8f27f 100644
--- a/fs/xfs/xfs_mount.c
+++ b/fs/xfs/xfs_mount.c
@@ -721,6 +721,11 @@ xfs_sb_read_verify(
}
error = xfs_sb_verify(bp);
+ if (error == XFS_ERROR(EWRONGFS)) {
+ xfs_buf_ioerror(bp, EWRONGFS);
+ return;
+ }
+
out_error:
if (error) {
XFS_CORRUPTION_ERROR(__func__, XFS_ERRLEVEL_LOW, mp, bp->b_addr);
--
Markus
More information about the xfs
mailing list