summaryrefslogtreecommitdiffstats
path: root/fs/fscache
diff options
context:
space:
mode:
authorRoger Willcocks2016-10-20 06:48:38 +0200
committerDave Chinner2016-10-20 06:48:38 +0200
commit8cdcc8102c0cfad20513ed1bfb96e0e9963928a8 (patch)
tree25f6467ff79b46d176c68b391d315226f9bf2383 /fs/fscache
parentlibxfs: clean up _calc_dquots_per_chunk (diff)
downloadkernel-qcow2-linux-8cdcc8102c0cfad20513ed1bfb96e0e9963928a8.tar.gz
kernel-qcow2-linux-8cdcc8102c0cfad20513ed1bfb96e0e9963928a8.tar.xz
kernel-qcow2-linux-8cdcc8102c0cfad20513ed1bfb96e0e9963928a8.zip
libxfs: v3 inodes are only valid on crc-enabled filesystems
xfs_repair was not detecting that version 3 inodes are invalid for for non-CRC filesystems. The result is specific inode corruptions go undetected and hence aren't repaired if only the version number is out of range. The core of the problem is that the XFS_DINODE_GOOD_VERSION() macro doesn't know that valid inode versions are dependent on a superblock version number. Fix this in libxfs, and propagate the new function out into the rest of xfsprogs to fix the issue. [Darrick: port to kernel from xfsprogs] Reported-by: Leslie Rhorer <lrhorer@mygrande.net> Signed-off-by: Roger Willcocks <roger@filmlight.ltd.uk> Reviewed-by: Dave Chinner <dchinner@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs/fscache')
0 files changed, 0 insertions, 0 deletions