mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 16:24:13 +08:00
Btrfs: cleanup of error processing in btree_get_extent()
This patch simplifies a little complex error processing in btree_get_extent(). Signed-off-by: Tsutomu Itoh <t-itoh@jp.fujitsu.com>
This commit is contained in:
parent
90abccf2c6
commit
0433f20d43
@ -222,21 +222,17 @@ static struct extent_map *btree_get_extent(struct inode *inode,
|
||||
|
||||
free_extent_map(em);
|
||||
em = lookup_extent_mapping(em_tree, start, len);
|
||||
if (em) {
|
||||
ret = 0;
|
||||
} else {
|
||||
em = lookup_extent_mapping(em_tree, failed_start,
|
||||
failed_len);
|
||||
ret = -EIO;
|
||||
if (!em) {
|
||||
lookup_extent_mapping(em_tree, failed_start,
|
||||
failed_len);
|
||||
em = ERR_PTR(-EIO);
|
||||
}
|
||||
} else if (ret) {
|
||||
free_extent_map(em);
|
||||
em = NULL;
|
||||
em = ERR_PTR(ret);
|
||||
}
|
||||
write_unlock(&em_tree->lock);
|
||||
|
||||
if (ret)
|
||||
em = ERR_PTR(ret);
|
||||
out:
|
||||
return em;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user