Lines Matching full:collapse
1043 * Subtree collapse to node iterator.
1048 struct assoc_array_delete_collapse_context *collapse = iterator_data; in assoc_array_delete_collapse_iterator() local
1050 if (leaf == collapse->skip_leaf) in assoc_array_delete_collapse_iterator()
1053 BUG_ON(collapse->slot >= ASSOC_ARRAY_FAN_OUT); in assoc_array_delete_collapse_iterator()
1055 collapse->node->slots[collapse->slot++] = assoc_array_leaf_to_ptr(leaf); in assoc_array_delete_collapse_iterator()
1082 struct assoc_array_delete_collapse_context collapse; in assoc_array_delete() local
1151 * leaves in it, then attempt to collapse it - and attempt to in assoc_array_delete()
1152 * recursively collapse up the tree. in assoc_array_delete()
1154 * We could also try and collapse in partially filled subtrees to take in assoc_array_delete()
1177 /* Look further up the tree to see if we can collapse this node in assoc_array_delete()
1182 pr_devel("collapse subtree: %ld\n", parent->nr_leaves_on_branch); in assoc_array_delete()
1208 /* Create a new node to collapse into */ in assoc_array_delete()
1219 collapse.node = new_n0; in assoc_array_delete()
1220 collapse.skip_leaf = assoc_array_ptr_to_leaf(edit->dead_leaf); in assoc_array_delete()
1221 collapse.slot = 0; in assoc_array_delete()
1225 &collapse); in assoc_array_delete()
1226 pr_devel("collapsed %d,%lu\n", collapse.slot, new_n0->nr_leaves_on_branch); in assoc_array_delete()
1227 BUG_ON(collapse.slot != new_n0->nr_leaves_on_branch - 1); in assoc_array_delete()