提交 b14c55a1 编写于 作者: L Liu Bo 提交者: David Sterba

Btrfs: remove BUG() in add_data_reference

Now that we have a helper to report invalid value of extent inline ref
type, we need to quit gracefully instead of throwing out a kernel panic.
Signed-off-by: NLiu Bo <bo.li.liu@oracle.com>
Reviewed-by: NDavid Sterba <dsterba@suse.com>
Signed-off-by: NDavid Sterba <dsterba@suse.com>
上级 07638ea5
...@@ -3772,7 +3772,10 @@ int add_data_references(struct reloc_control *rc, ...@@ -3772,7 +3772,10 @@ int add_data_references(struct reloc_control *rc,
ret = find_data_references(rc, extent_key, ret = find_data_references(rc, extent_key,
eb, dref, blocks); eb, dref, blocks);
} else { } else {
BUG(); ret = -EINVAL;
btrfs_err(rc->extent_root->fs_info,
"extent %llu slot %d has an invalid inline ref type",
eb->start, path->slots[0]);
} }
if (ret) { if (ret) {
err = ret; err = ret;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册