btrfs: remove BUG_ON() in find_parent_nodes()
[ Upstream commit fcba0120edf88328524a4878d1d6f4ad39f2ec81 ] We search for an extent entry with .offset = -1, which shouldn't be a thing, but corruption happens. Add an ASSERT() for the developers, return -EUCLEAN for mortals. Signed-off-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
44cbd2a16a
commit
623c65bc73
@@ -1213,7 +1213,12 @@ again:
|
|||||||
ret = btrfs_search_slot(trans, fs_info->extent_root, &key, path, 0, 0);
|
ret = btrfs_search_slot(trans, fs_info->extent_root, &key, path, 0, 0);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
goto out;
|
goto out;
|
||||||
BUG_ON(ret == 0);
|
if (ret == 0) {
|
||||||
|
/* This shouldn't happen, indicates a bug or fs corruption. */
|
||||||
|
ASSERT(ret != 0);
|
||||||
|
ret = -EUCLEAN;
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_BTRFS_FS_RUN_SANITY_TESTS
|
#ifdef CONFIG_BTRFS_FS_RUN_SANITY_TESTS
|
||||||
if (trans && likely(trans->type != __TRANS_DUMMY) &&
|
if (trans && likely(trans->type != __TRANS_DUMMY) &&
|
||||||
|
Reference in New Issue
Block a user