summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorLi Zefan <lizf@cn.fujitsu.com>2011-07-14 03:18:03 +0000
committerChris Mason <chris.mason@oracle.com>2011-08-01 14:30:49 -0400
commit7e016a038e829c7d1271e1d57b8002860bbdf0db (patch)
tree3698e7d02602b791f783a2b8877651f538db3543 /fs
parent85d85a743da894029723e002eb556ceeebc03658 (diff)
downloadlinux-stable-7e016a038e829c7d1271e1d57b8002860bbdf0db.tar.gz
linux-stable-7e016a038e829c7d1271e1d57b8002860bbdf0db.tar.bz2
linux-stable-7e016a038e829c7d1271e1d57b8002860bbdf0db.zip
Btrfs: clean up search_extent_mapping()
rb_node returned by __tree_search() can be a valid pointer or NULL, but won't be some errno. Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/btrfs/extent_map.c17
1 files changed, 3 insertions, 14 deletions
diff --git a/fs/btrfs/extent_map.c b/fs/btrfs/extent_map.c
index 2d0410344ea3..911a9db801e0 100644
--- a/fs/btrfs/extent_map.c
+++ b/fs/btrfs/extent_map.c
@@ -379,23 +379,12 @@ struct extent_map *search_extent_mapping(struct extent_map_tree *tree,
em = rb_entry(next, struct extent_map, rb_node);
goto found;
}
- if (!rb_node) {
- em = NULL;
- goto out;
- }
- if (IS_ERR(rb_node)) {
- em = ERR_CAST(rb_node);
- goto out;
- }
- em = rb_entry(rb_node, struct extent_map, rb_node);
- goto found;
-
- em = NULL;
- goto out;
+ if (!rb_node)
+ return NULL;
+ em = rb_entry(rb_node, struct extent_map, rb_node);
found:
atomic_inc(&em->refs);
-out:
return em;
}