Re: allow mounting w/crc-checking disabled? (was Re: filesystem dead, xfs_repair won't help)

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

 




On 4/11/17 11:18 AM, Emmanuel Florac wrote:
> Le Tue, 11 Apr 2017 08:34:44 -0500
> Eric Sandeen <sandeen@xxxxxxxxxxx> écrivait:
> 
>> Three, none of this has anything to do with the email that started
>> this thread.  Bad firmware turned Avi's SSD into a vat of goo, and
>> CRCs are not in any way related to his inability to recover his
>> filesystem.
> 
> OK, but xfs_db finds and reads the sb OK, and it looks fine at first
> look; why does xfs_repair fail completely? I'm not actually certain
> that Avi's SSD is a "vat of goo"... 

Well, the AGF printed out by the kernel on the mount attempt was
nowhere close to a valid AGF structure.

Ok, "vat of goo" may have been too strong, but there is at least
one core filesystem structure which are completely scrambled.

That's just the one that was obvious from the mount attempt; I was
assuming there were likely more areas of extreme damage, but that
was an assumption on my part.

Apr 10 11:41:20 avi.cloudius-systems.com kernel: XFS (nvme0n1): Metadata CRC error detected at xfs_agfl_read_verify+0xcd/0x100 [xfs], xfs_agfl block 0x2cb68e13
Apr 10 11:41:20 avi.cloudius-systems.com kernel: XFS (nvme0n1): Unmount and run xfs_repair
Apr 10 11:41:20 avi.cloudius-systems.com kernel: XFS (nvme0n1): First 64 bytes of corrupted metadata buffer:
Apr 10 11:41:20 avi.cloudius-systems.com kernel: ffff9004a5b75400: 23 40 8f 28 5b 50 3a b4 f8 54 1e 31 97 f4 fe ed  #@.([P:..T.1....
Apr 10 11:41:20 avi.cloudius-systems.com kernel: ffff9004a5b75410: 62 87 57 51 ee 9d 31 02 ec 2c 10 46 6c 93 db 09  b.WQ..1..,.Fl...
Apr 10 11:41:20 avi.cloudius-systems.com kernel: ffff9004a5b75420: ae 7a ea b3 91 49 7e d3 99 a4 25 49 11 c5 8b be  .z...I~...%I....
Apr 10 11:41:20 avi.cloudius-systems.com kernel: ffff9004a5b75430: e4 2e 14 d4 8a f8 5f 98 66 d8 67 72 ec c9 1a d5  ......_.f.gr.... 

Again, don't fixate on the "CRC" error.  The above is /not/ an AGFL for this filesystem.

typedef struct xfs_agfl {
        __be32          agfl_magicnum;
        __be32          agfl_seqno;
        uuid_t          agfl_uuid;
        __be64          agfl_lsn;
        __be32          agfl_crc;
        __be32          agfl_bno[];     /* actually XFS_AGFL_SIZE(mp) */
} __attribute__((packed)) xfs_agfl_t;

The magicnum is wrong.
The seqno is invalid.
The UUID data in agfl_uuid does not match this filesystem.

etc...

-Eric

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux