Btrfs: Add debugging checks to track down corrupted metadata
Signed-off-by: Chris Mason <chris.mason@oracle.com>
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 6a218f7..8e7a938 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -250,7 +250,7 @@
if (!ret &&
!verify_parent_transid(io_tree, eb, parent_transid))
return ret;
-
+printk("read extent buffer pages failed with ret %d mirror no %d\n", ret, mirror_num);
num_copies = btrfs_num_copies(&root->fs_info->mapping_tree,
eb->start, eb->len);
if (num_copies == 1)
@@ -348,6 +348,9 @@
found_start = btrfs_header_bytenr(eb);
if (found_start != start) {
+ printk("bad tree block start %llu %llu\n",
+ (unsigned long long)found_start,
+ (unsigned long long)eb->start);
ret = -EIO;
goto err;
}
@@ -709,6 +712,8 @@
if (ret == 0) {
buf->flags |= EXTENT_UPTODATE;
+ } else {
+ WARN_ON(1);
}
return buf;