Lines Matching refs:en

116 						struct extent_node *en)  in __try_update_largest_extent()  argument
120 if (en->ei.len <= et->largest.len) in __try_update_largest_extent()
123 et->largest = en->ei; in __try_update_largest_extent()
164 struct extent_node *en; in __lookup_extent_node() local
173 en = rb_entry(node, struct extent_node, rb_node); in __lookup_extent_node()
175 if (fofs < en->ei.fofs) in __lookup_extent_node()
177 else if (fofs >= en->ei.fofs + en->ei.len) in __lookup_extent_node()
180 return en; in __lookup_extent_node()
205 struct extent_node *en = cached_en; in __lookup_extent_node_ret() local
215 if (en && en->ei.fofs <= fofs && en->ei.fofs + en->ei.len > fofs) in __lookup_extent_node_ret()
222 en = rb_entry(*pnode, struct extent_node, rb_node); in __lookup_extent_node_ret()
224 if (fofs < en->ei.fofs) { in __lookup_extent_node_ret()
226 } else if (fofs >= en->ei.fofs + en->ei.len) { in __lookup_extent_node_ret()
237 en = rb_entry(parent, struct extent_node, rb_node); in __lookup_extent_node_ret()
239 if (parent && fofs > en->ei.fofs) in __lookup_extent_node_ret()
244 if (parent && fofs < en->ei.fofs) in __lookup_extent_node_ret()
250 if (fofs == en->ei.fofs) { in __lookup_extent_node_ret()
252 tmp_node = rb_prev(&en->rb_node); in __lookup_extent_node_ret()
256 if (fofs == en->ei.fofs + en->ei.len - 1) { in __lookup_extent_node_ret()
258 tmp_node = rb_next(&en->rb_node); in __lookup_extent_node_ret()
262 return en; in __lookup_extent_node_ret()
274 struct extent_node *en; in __attach_extent_node() local
276 en = f2fs_kmem_cache_alloc(extent_node_slab, GFP_ATOMIC, false, sbi); in __attach_extent_node()
277 if (!en) in __attach_extent_node()
280 en->ei = *ei; in __attach_extent_node()
281 INIT_LIST_HEAD(&en->list); in __attach_extent_node()
282 en->et = et; in __attach_extent_node()
284 rb_link_node(&en->rb_node, parent, p); in __attach_extent_node()
285 rb_insert_color_cached(&en->rb_node, &et->root, leftmost); in __attach_extent_node()
288 return en; in __attach_extent_node()
292 struct extent_tree *et, struct extent_node *en) in __detach_extent_node() argument
296 rb_erase_cached(&en->rb_node, &et->root); in __detach_extent_node()
300 if (et->cached_en == en) in __detach_extent_node()
302 kmem_cache_free(extent_node_slab, en); in __detach_extent_node()
312 struct extent_tree *et, struct extent_node *en) in __release_extent_node() argument
317 f2fs_bug_on(sbi, list_empty(&en->list)); in __release_extent_node()
318 list_del_init(&en->list); in __release_extent_node()
321 __detach_extent_node(sbi, et, en); in __release_extent_node()
363 struct extent_node *en; in __free_extent_tree() local
369 en = rb_entry(node, struct extent_node, rb_node); in __free_extent_tree()
370 __release_extent_node(sbi, et, en); in __free_extent_tree()
393 struct extent_node *en; in f2fs_init_read_extent_tree() local
417 en = __attach_extent_node(sbi, et, &ei, NULL, in f2fs_init_read_extent_tree()
419 if (en) { in f2fs_init_read_extent_tree()
420 et->largest = en->ei; in f2fs_init_read_extent_tree()
421 et->cached_en = en; in f2fs_init_read_extent_tree()
424 list_add_tail(&en->list, &eti->extent_list); in f2fs_init_read_extent_tree()
458 struct extent_node *en; in __lookup_extent_tree() local
477 en = __lookup_extent_node(&et->root, et->cached_en, pgofs); in __lookup_extent_tree()
478 if (!en) in __lookup_extent_tree()
481 if (en == et->cached_en) in __lookup_extent_tree()
486 *ei = en->ei; in __lookup_extent_tree()
488 if (!list_empty(&en->list)) { in __lookup_extent_tree()
489 list_move_tail(&en->list, &eti->extent_list); in __lookup_extent_tree()
490 et->cached_en = en; in __lookup_extent_tree()
511 struct extent_node *en = NULL; in __try_merge_extent_node() local
516 en = prev_ex; in __try_merge_extent_node()
524 if (en) in __try_merge_extent_node()
527 en = next_ex; in __try_merge_extent_node()
530 if (!en) in __try_merge_extent_node()
533 __try_update_largest_extent(et, en); in __try_merge_extent_node()
536 if (!list_empty(&en->list)) { in __try_merge_extent_node()
537 list_move_tail(&en->list, &eti->extent_list); in __try_merge_extent_node()
538 et->cached_en = en; in __try_merge_extent_node()
541 return en; in __try_merge_extent_node()
553 struct extent_node *en = NULL; in __insert_extent_tree() local
566 en = rb_entry(parent, struct extent_node, rb_node); in __insert_extent_tree()
568 if (ei->fofs < en->ei.fofs) { in __insert_extent_tree()
570 } else if (ei->fofs >= en->ei.fofs + en->ei.len) { in __insert_extent_tree()
579 en = __attach_extent_node(sbi, et, ei, parent, p, leftmost); in __insert_extent_tree()
580 if (!en) in __insert_extent_tree()
583 __try_update_largest_extent(et, en); in __insert_extent_tree()
587 list_add_tail(&en->list, &eti->extent_list); in __insert_extent_tree()
588 et->cached_en = en; in __insert_extent_tree()
590 return en; in __insert_extent_tree()
598 struct extent_node *en = NULL, *en1 = NULL; in __update_extent_tree_range() local
636 en = __lookup_extent_node_ret(&et->root, in __update_extent_tree_range()
641 if (!en) in __update_extent_tree_range()
642 en = next_en; in __update_extent_tree_range()
645 while (en && en->ei.fofs < end) { in __update_extent_tree_range()
651 dei = en->ei; in __update_extent_tree_range()
657 en->ei.len = fofs - en->ei.fofs; in __update_extent_tree_range()
658 prev_en = en; in __update_extent_tree_range()
674 __set_extent_info(&en->ei, in __update_extent_tree_range()
675 end, en->ei.len - (end - dei.fofs), in __update_extent_tree_range()
676 en->ei.blk + (end - dei.fofs), true, in __update_extent_tree_range()
679 next_en = en; in __update_extent_tree_range()
685 struct rb_node *node = rb_next(&en->rb_node); in __update_extent_tree_range()
692 __try_update_largest_extent(et, en); in __update_extent_tree_range()
694 __release_extent_node(sbi, et, en); in __update_extent_tree_range()
705 en = next_en; in __update_extent_tree_range()
762 struct extent_node *en = NULL; in f2fs_update_read_extent_tree_range_compressed() local
777 en = __lookup_extent_node_ret(&et->root, in f2fs_update_read_extent_tree_range_compressed()
782 if (en) in f2fs_update_read_extent_tree_range_compressed()
901 struct extent_node *en; in __shrink_extent_tree() local
943 en = list_first_entry(&eti->extent_list, in __shrink_extent_tree()
945 et = en->et; in __shrink_extent_tree()
948 list_move_tail(&en->list, &eti->extent_list); in __shrink_extent_tree()
952 list_del_init(&en->list); in __shrink_extent_tree()
955 __detach_extent_node(sbi, et, en); in __shrink_extent_tree()