Re: Internal error xfs_sb_read_verify at line 726

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs




[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux