On 5/11/17 9:39 AM, Jan Beulich wrote: > Hello, > > It is now on two systems that I'm getting > > XFS (sda1): corrupt dinode 576254627, has realtime flag set. > ffff88042ea63300: 49 4e 81 a4 02 02 00 00 00 00 03 e8 00 00 00 64 IN.............d > ffff88042ea63310: 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 ................ > ffff88042ea63320: 59 14 0e 9f 0f a7 7c 2f 59 14 0e 9f 18 f3 db 2f Y.....|/Y....../ > ffff88042ea63330: 59 14 0e 9f 18 f3 db 2f 00 00 00 00 00 00 80 80 Y....../........ ... > XFS (sda1): Corruption detected. Unmount and run xfs_repair > > after a crash with a 4.11-based kernel. I didn't try xfs_repair-ing > the volume in this second instance, as the result from doing so in > the first instance was only permanent re-occurrence (and > apparently spreading) of the problem. It may be interesting that > xfs_check finds only this one corrupted inode, while the kernel > also finds at least one more: > > XFS (sda1): corrupt dinode 104812066, has realtime flag set. > ffff88042e88f200: 49 4e 41 ed 02 01 00 00 00 00 03 e8 00 00 00 64 INA............d > ffff88042e88f210: 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 ................ > ffff88042e88f220: 59 01 c7 96 00 16 1e 50 59 14 0e a2 15 60 54 2f Y......PY....`T/ > ffff88042e88f230: 59 14 0e a2 15 60 54 2f 00 00 00 00 00 00 00 8e Y....`T/........ > XFS (sda1): Internal error xfs_iformat(realtime) at line 133 of file .../fs/xfs/xfs_inode_fork.c. Caller xfs_iread+0xea/0x2e0 [xfs] > > The kernel used after the crash doesn't appear to matter, all report > the same issues, but I've experienced similar crashes in the past > without ever having seen such corruption before. > > In any event I think there are two problems: The corruption itself > (possibly an issue with recent enough upstream kernels only) and > the fact that running xfs_repair doesn't help in these cases. FWIW, recent xfs_repair (v4.11.0) finds several bad inodes on the sdb8 metadump you sent, and apparently fixes* them without problems. inode 764 has RT flag set but there is no RT device directory flags set on non-directory inode 764 inode 2068 has RT flag set but there is no RT device directory flags set on non-directory inode 2068 inode 268448674 has RT flag set but there is no RT device directory flags set on non-directory inode 268448674 these are: 764: lib/xenstored/tdb 2068: log/messages 268448674: lib/sudo/jbeulich/0 and after repair, I can read all the inodes on the device w/o further errors (upstream linus kernel) As for the original corruption problem, I'm not sure. *Each of the 3 problematic inodes has an odd assortment of flags set (think chattr type flags) - some have immutable, some have noatime, some have nodump, etc. These are what cause xfs_repair t ocomplain. It seems unlikely that any of these were actually set on your filesystem, as these are the only ones with any flags set. After repair, they're showing: --S---dA----------- mnt/log/messages --S-i--A----------- mnt/lib/sudo/jbeulich/0 --S----A----------- mnt/lib/xenstored/tdb Did you happen to set chattr flags on these files intentionally? Two if the problematic inodes also have a generation number of 0, which also seems a bit odd. -Eric > I'm > attaching xfs_check and xfs_metadump warning output for both > affected volumes in this second instance. The full files > xfs_metadump -agow produced can be provided upon request > (500Mb and 80Mb uncompressed respectively). > > Thanks for any advice / fix, > Jan > -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html