Skip to content

Commit 08f088d

Browse files
fdmananakdave
authored andcommitted
btrfs: remove unnecessary NULL pointer checks when searching extent maps
The previous and next pointer arguments passed to __tree_search() are never NULL as the only caller of this function, __lookup_extent_mapping(), always passes the address of two on stack pointers. So remove the NULL checks and add assertions to verify the pointers. Signed-off-by: Filipe Manana <[email protected]> Reviewed-by: David Sterba <[email protected]> Signed-off-by: David Sterba <[email protected]>
1 parent 74333c7 commit 08f088d

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

fs/btrfs/extent_map.c

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,9 @@ static struct rb_node *__tree_search(struct rb_root *root, u64 offset,
150150
struct extent_map *entry;
151151
struct extent_map *prev_entry = NULL;
152152

153+
ASSERT(prev_ret);
154+
ASSERT(next_ret);
155+
153156
while (n) {
154157
entry = rb_entry(n, struct extent_map, rb_node);
155158
prev = n;
@@ -163,24 +166,21 @@ static struct rb_node *__tree_search(struct rb_root *root, u64 offset,
163166
return n;
164167
}
165168

166-
if (prev_ret) {
167-
orig_prev = prev;
168-
while (prev && offset >= extent_map_end(prev_entry)) {
169-
prev = rb_next(prev);
170-
prev_entry = rb_entry(prev, struct extent_map, rb_node);
171-
}
172-
*prev_ret = prev;
173-
prev = orig_prev;
169+
orig_prev = prev;
170+
while (prev && offset >= extent_map_end(prev_entry)) {
171+
prev = rb_next(prev);
172+
prev_entry = rb_entry(prev, struct extent_map, rb_node);
174173
}
174+
*prev_ret = prev;
175+
prev = orig_prev;
175176

176-
if (next_ret) {
177+
prev_entry = rb_entry(prev, struct extent_map, rb_node);
178+
while (prev && offset < prev_entry->start) {
179+
prev = rb_prev(prev);
177180
prev_entry = rb_entry(prev, struct extent_map, rb_node);
178-
while (prev && offset < prev_entry->start) {
179-
prev = rb_prev(prev);
180-
prev_entry = rb_entry(prev, struct extent_map, rb_node);
181-
}
182-
*next_ret = prev;
183181
}
182+
*next_ret = prev;
183+
184184
return NULL;
185185
}
186186

0 commit comments

Comments
 (0)