Lines Matching refs:merge
227 struct extent_map *merge = NULL; in try_merge_map() local
233 merge = rb_entry(rb, struct extent_map, rb_node); in try_merge_map()
234 if (rb && mergable_maps(merge, em)) { in try_merge_map()
235 em->start = merge->start; in try_merge_map()
236 em->orig_start = merge->orig_start; in try_merge_map()
237 em->len += merge->len; in try_merge_map()
238 em->block_len += merge->block_len; in try_merge_map()
239 em->block_start = merge->block_start; in try_merge_map()
240 em->mod_len = (em->mod_len + em->mod_start) - merge->mod_start; in try_merge_map()
241 em->mod_start = merge->mod_start; in try_merge_map()
242 em->generation = max(em->generation, merge->generation); in try_merge_map()
244 rb_erase(&merge->rb_node, &tree->map); in try_merge_map()
245 RB_CLEAR_NODE(&merge->rb_node); in try_merge_map()
246 free_extent_map(merge); in try_merge_map()
252 merge = rb_entry(rb, struct extent_map, rb_node); in try_merge_map()
253 if (rb && mergable_maps(em, merge)) { in try_merge_map()
254 em->len += merge->len; in try_merge_map()
255 em->block_len += merge->block_len; in try_merge_map()
256 rb_erase(&merge->rb_node, &tree->map); in try_merge_map()
257 RB_CLEAR_NODE(&merge->rb_node); in try_merge_map()
258 em->mod_len = (merge->mod_start + merge->mod_len) - em->mod_start; in try_merge_map()
259 em->generation = max(em->generation, merge->generation); in try_merge_map()
260 free_extent_map(merge); in try_merge_map()