Lines Matching full:free
45 wl_tree_add(e, &ubi->free); in return_unused_peb()
50 * return_unused_pool_pebs - returns unused PEB to the free tree.
79 if (!ubi->free.rb_node || (ubi->free_count - ubi->beb_rsvd_pebs < 1)) in ubi_wl_get_fm_peb()
83 e = find_anchor_wl_entry(&ubi->free); in ubi_wl_get_fm_peb()
85 e = find_mean_wl_entry(ubi, &ubi->free); in ubi_wl_get_fm_peb()
90 self_check_in_wl_tree(ubi, e, &ubi->free); in ubi_wl_get_fm_peb()
92 /* remove it from the free list, in ubi_wl_get_fm_peb()
94 rb_erase(&e->u.rb, &ubi->free); in ubi_wl_get_fm_peb()
120 wl_tree_add(ubi->fm_anchor, &ubi->free); in ubi_refill_pools()
124 wl_tree_add(ubi->fm_next_anchor, &ubi->free); in ubi_refill_pools()
128 /* All available PEBs are in ubi->free, now is the time to get in ubi_refill_pools()
137 if (!ubi->free.rb_node) in ubi_refill_pools()
150 if (!ubi->free.rb_node || in ubi_refill_pools()
154 e = find_wl_entry(ubi, &ubi->free, WL_FREE_MAX_DIFF); in ubi_refill_pools()
155 self_check_in_wl_tree(ubi, e, &ubi->free); in ubi_refill_pools()
156 rb_erase(&e->u.rb, &ubi->free); in ubi_refill_pools()
175 * produce_free_peb - produce a free physical eraseblock.
178 * This function tries to make a free PEB by means of synchronous execution of
187 while (!ubi->free.rb_node && ubi->works_count) { in produce_free_peb()
235 ubi_err(ubi, "Unable to get a free PEB from user WL pool"); in ubi_wl_get_peb()