|
@@ -453,14 +453,12 @@ static struct extent_node *__lookup_extent_tree(struct extent_tree *et,
|
|
|
while (node) {
|
|
|
en = rb_entry(node, struct extent_node, rb_node);
|
|
|
|
|
|
- if (fofs < en->ei.fofs) {
|
|
|
+ if (fofs < en->ei.fofs)
|
|
|
node = node->rb_left;
|
|
|
- } else if (fofs >= en->ei.fofs + en->ei.len) {
|
|
|
+ else if (fofs >= en->ei.fofs + en->ei.len)
|
|
|
node = node->rb_right;
|
|
|
- } else {
|
|
|
- et->cached_en = en;
|
|
|
+ else
|
|
|
return en;
|
|
|
- }
|
|
|
}
|
|
|
return NULL;
|
|
|
}
|
|
@@ -625,6 +623,7 @@ static bool f2fs_lookup_extent_tree(struct inode *inode, pgoff_t pgofs,
|
|
|
spin_lock(&sbi->extent_lock);
|
|
|
if (!list_empty(&en->list))
|
|
|
list_move_tail(&en->list, &sbi->extent_list);
|
|
|
+ et->cached_en = en;
|
|
|
spin_unlock(&sbi->extent_lock);
|
|
|
stat_inc_read_hit(sbi->sb);
|
|
|
}
|