btrfs-progs/check
Qu Wenruo af816ca930 btrfs-progs: check: orig: Add ability to repair dir item with invalid hash
The repair function is reusing delete_corrupted_dir_item().

Since the error can happen for root dir inode, also call
try_repair_inode() on root dir inode.

This is especially important for old filesystems, since later kernel
introduces stricter tree-checker, which could detect such hash mismatch
and refuse to read the corrupted leaf.

With this repair ability, user could repair with btrfs check --repair.

Link: https://bugzilla.opensuse.org/show_bug.cgi?id=1111991
Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2019-01-15 18:42:13 +01:00
..
main.c btrfs-progs: check: orig: Add ability to repair dir item with invalid hash 2019-01-15 18:42:13 +01:00
mode-common.c btrfs-progs: check: lowmem: Add ability to repair dir item with mismatched hash 2019-01-15 18:42:13 +01:00
mode-common.h btrfs-progs: check: lowmem: Add ability to repair dir item with mismatched hash 2019-01-15 18:42:13 +01:00
mode-lowmem.c btrfs-progs: check: lowmem: Add ability to repair dir item with mismatched hash 2019-01-15 18:42:13 +01:00
mode-lowmem.h btrfs-progs: check: lowmem: Add ability to repair dir item with mismatched hash 2019-01-15 18:42:13 +01:00
mode-original.h btrfs-progs: check: orig: Use mismatch_dir_hash_record to record bad dir items 2019-01-15 18:42:13 +01:00