diff options
| -rw-r--r-- | fs/btrfs/relocation.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/fs/btrfs/relocation.c b/fs/btrfs/relocation.c index 0ec8ffa37ab0..c4af0cdb783d 100644 --- a/fs/btrfs/relocation.c +++ b/fs/btrfs/relocation.c | |||
| @@ -2728,7 +2728,14 @@ static int do_relocation(struct btrfs_trans_handle *trans, | |||
| 2728 | 2728 | ||
| 2729 | bytenr = btrfs_node_blockptr(upper->eb, slot); | 2729 | bytenr = btrfs_node_blockptr(upper->eb, slot); |
| 2730 | if (lowest) { | 2730 | if (lowest) { |
| 2731 | BUG_ON(bytenr != node->bytenr); | 2731 | if (bytenr != node->bytenr) { |
| 2732 | btrfs_err(root->fs_info, | ||
| 2733 | "lowest leaf/node mismatch: bytenr %llu node->bytenr %llu slot %d upper %llu", | ||
| 2734 | bytenr, node->bytenr, slot, | ||
| 2735 | upper->eb->start); | ||
| 2736 | err = -EIO; | ||
| 2737 | goto next; | ||
| 2738 | } | ||
| 2732 | } else { | 2739 | } else { |
| 2733 | if (node->eb->start == bytenr) | 2740 | if (node->eb->start == bytenr) |
| 2734 | goto next; | 2741 | goto next; |
