Commit 29549aec authored by Wang Shilong's avatar Wang Shilong Committed by Chris Mason

Btrfs: print btrfs specific info for some fatal error cases

Marc argued that if there are several btrfs filesystems mounted,
while users even don't know which filesystem hit the corrupted
errors something like generation verification failure.

Since @extent_buffer structure has a member @fs_info, let's output
btrfs device info.
Reported-by: default avatarMarc MERLIN <marc@merlins.org>
Signed-off-by: default avatarWang Shilong <wangsl.fnst@cn.fujitsu.com>
Signed-off-by: default avatarChris Mason <clm@fb.com>
parent d20983b4
...@@ -348,9 +348,9 @@ static int verify_parent_transid(struct extent_io_tree *io_tree, ...@@ -348,9 +348,9 @@ static int verify_parent_transid(struct extent_io_tree *io_tree,
ret = 0; ret = 0;
goto out; goto out;
} }
printk_ratelimited("parent transid verify failed on %llu wanted %llu " printk_ratelimited(KERN_INFO "BTRFS (device %s): parent transid verify failed on %llu wanted %llu found %llu\n",
"found %llu\n", eb->fs_info->sb->s_id, eb->start,
eb->start, parent_transid, btrfs_header_generation(eb)); parent_transid, btrfs_header_generation(eb));
ret = 1; ret = 1;
/* /*
...@@ -614,15 +614,15 @@ static int btree_readpage_end_io_hook(struct btrfs_io_bio *io_bio, ...@@ -614,15 +614,15 @@ static int btree_readpage_end_io_hook(struct btrfs_io_bio *io_bio,
found_start = btrfs_header_bytenr(eb); found_start = btrfs_header_bytenr(eb);
if (found_start != eb->start) { if (found_start != eb->start) {
printk_ratelimited(KERN_INFO "BTRFS: bad tree block start " printk_ratelimited(KERN_INFO "BTRFS (device %s): bad tree block start "
"%llu %llu\n", "%llu %llu\n",
found_start, eb->start); eb->fs_info->sb->s_id, found_start, eb->start);
ret = -EIO; ret = -EIO;
goto err; goto err;
} }
if (check_tree_block_fsid(root, eb)) { if (check_tree_block_fsid(root, eb)) {
printk_ratelimited(KERN_INFO "BTRFS: bad fsid on block %llu\n", printk_ratelimited(KERN_INFO "BTRFS (device %s): bad fsid on block %llu\n",
eb->start); eb->fs_info->sb->s_id, eb->start);
ret = -EIO; ret = -EIO;
goto err; goto err;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment