diff options
author | Qu Wenruo <quwenruo@cn.fujitsu.com> | 2014-10-06 14:31:21 +0800 |
---|---|---|
committer | David Sterba <dsterba@suse.cz> | 2014-10-10 10:38:38 +0200 |
commit | 0cf497719cf8d2c6f7967a386a7b54b0119fd1b4 (patch) | |
tree | eb0d61b948311b9be1ee51e1e481fb0ae0e93a81 /volumes.c | |
parent | 935457f16446012841f8da5a5c9804063d76b366 (diff) |
btrfs-progs: Check the consistence between the parent node and child node/leaf.
When btrfs-progs walk down the tree, it does not check whether the child
node/leaf is valid.
In fact, there is some corrupted image whose csum is all valid but
parent node points to a invalid leaf.
In my case, the parent node in fs tree point to a invalid leaf(gen 11),
whose generation(15) and first key(EXTENT_TREE ROOT_ITEM 0) is
completely invalid, and will cause BUG_ON in process_inode_item().
Unfortunately, we are unable to fix when it happens.
So we can only output meaningful error message and avoid the insane
node/leaf, which is still much better than the original BUG_ON().
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
Diffstat (limited to 'volumes.c')
0 files changed, 0 insertions, 0 deletions