Lines Matching full:collapse
1048 * Subtree collapse to node iterator.
1053 struct assoc_array_delete_collapse_context *collapse = iterator_data; in assoc_array_delete_collapse_iterator() local
1055 if (leaf == collapse->skip_leaf) in assoc_array_delete_collapse_iterator()
1058 BUG_ON(collapse->slot >= ASSOC_ARRAY_FAN_OUT); in assoc_array_delete_collapse_iterator()
1060 collapse->node->slots[collapse->slot++] = assoc_array_leaf_to_ptr(leaf); in assoc_array_delete_collapse_iterator()
1087 struct assoc_array_delete_collapse_context collapse; in assoc_array_delete() local
1155 * leaves in it, then attempt to collapse it - and attempt to in assoc_array_delete()
1156 * recursively collapse up the tree. in assoc_array_delete()
1158 * We could also try and collapse in partially filled subtrees to take in assoc_array_delete()
1181 /* Look further up the tree to see if we can collapse this node in assoc_array_delete()
1186 pr_devel("collapse subtree: %ld\n", parent->nr_leaves_on_branch); in assoc_array_delete()
1212 /* Create a new node to collapse into */ in assoc_array_delete()
1223 collapse.node = new_n0; in assoc_array_delete()
1224 collapse.skip_leaf = assoc_array_ptr_to_leaf(edit->dead_leaf); in assoc_array_delete()
1225 collapse.slot = 0; in assoc_array_delete()
1229 &collapse); in assoc_array_delete()
1230 pr_devel("collapsed %d,%lu\n", collapse.slot, new_n0->nr_leaves_on_branch); in assoc_array_delete()
1231 BUG_ON(collapse.slot != new_n0->nr_leaves_on_branch - 1); in assoc_array_delete()