@@ -71,12 +71,6 @@ static inline void __btrfs_debug_check_extent_io_range(const char *caller,
#define btrfs_debug_check_extent_io_range(c, s, e) do {} while (0)
#endif
-struct tree_entry {
- u64 start;
- u64 end;
- struct rb_node rb_node;
-};
-
/*
* For the file_extent_tree, we want to hold the inode lock when we lookup and
* update the disk_i_size, but lockdep will complain because our io_tree we hold
@@ -258,11 +252,11 @@ static inline struct rb_node *tree_search_for_insert(struct extent_io_tree *tree
struct rb_root *root = &tree->state;
struct rb_node **node = &root->rb_node;
struct rb_node *prev = NULL;
- struct tree_entry *entry;
+ struct extent_state *entry;
while (*node) {
prev = *node;
- entry = rb_entry(prev, struct tree_entry, rb_node);
+ entry = rb_entry(prev, struct extent_state, rb_node);
if (offset < entry->start)
node = &(*node)->rb_left;
@@ -280,7 +274,7 @@ static inline struct rb_node *tree_search_for_insert(struct extent_io_tree *tree
/* Search neighbors until we find the first one past the end */
while (prev && offset > entry->end) {
prev = rb_next(prev);
- entry = rb_entry(prev, struct tree_entry, rb_node);
+ entry = rb_entry(prev, struct extent_state, rb_node);
}
return prev;
@@ -315,14 +309,14 @@ static struct rb_node *tree_search_prev_next(struct extent_io_tree *tree,
struct rb_node **node = &root->rb_node;
struct rb_node *prev = NULL;
struct rb_node *orig_prev = NULL;
- struct tree_entry *entry;
+ struct extent_state *entry;
ASSERT(prev_ret);
ASSERT(next_ret);
while (*node) {
prev = *node;
- entry = rb_entry(prev, struct tree_entry, rb_node);
+ entry = rb_entry(prev, struct extent_state, rb_node);
if (offset < entry->start)
node = &(*node)->rb_left;
@@ -335,15 +329,15 @@ static struct rb_node *tree_search_prev_next(struct extent_io_tree *tree,
orig_prev = prev;
while (prev && offset > entry->end) {
prev = rb_next(prev);
- entry = rb_entry(prev, struct tree_entry, rb_node);
+ entry = rb_entry(prev, struct extent_state, rb_node);
}
*next_ret = prev;
prev = orig_prev;
- entry = rb_entry(prev, struct tree_entry, rb_node);
+ entry = rb_entry(prev, struct extent_state, rb_node);
while (prev && offset < entry->start) {
prev = rb_prev(prev);
- entry = rb_entry(prev, struct tree_entry, rb_node);
+ entry = rb_entry(prev, struct extent_state, rb_node);
}
*prev_ret = prev;
@@ -426,10 +420,10 @@ static int insert_state(struct extent_io_tree *tree,
node = &tree->state.rb_node;
while (*node) {
- struct tree_entry *entry;
+ struct extent_state *entry;
parent = *node;
- entry = rb_entry(parent, struct tree_entry, rb_node);
+ entry = rb_entry(parent, struct extent_state, rb_node);
if (end < entry->start) {
node = &(*node)->rb_left;
@@ -495,10 +489,10 @@ static int split_state(struct extent_io_tree *tree, struct extent_state *orig,
parent = &orig->rb_node;
node = &parent;
while (*node) {
- struct tree_entry *entry;
+ struct extent_state *entry;
parent = *node;
- entry = rb_entry(parent, struct tree_entry, rb_node);
+ entry = rb_entry(parent, struct extent_state, rb_node);
if (prealloc->end < entry->start) {
node = &(*node)->rb_left;
This existed when we overloaded the tree manipulation functions for both the extent_io_tree and the extent buffer tree. However the extent buffers are now stored in a radix tree, so we no longer need this abstraction. Remove struct tree_entry and use extent_state directly instead. Signed-off-by: Josef Bacik <josef@toxicpanda.com> --- fs/btrfs/extent-io-tree.c | 30 ++++++++++++------------------ 1 file changed, 12 insertions(+), 18 deletions(-)