From f5f53030abeb5badd2aecd77a665f2c3c1a8390a Mon Sep 17 00:00:00 2001 From: "Liam R. Howlett" Date: Tue, 22 Sep 2020 22:42:26 -0400 Subject: [PATCH] maple_tree: mas_parent_gap no longer updates limits Signed-off-by: Liam R. Howlett --- lib/maple_tree.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 1d89ea6f0c29..feb164fc770b 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -1142,16 +1142,17 @@ static inline void mas_parent_gap(struct ma_state *mas, unsigned char slot, ascend: /* Go to the parent node. */ - mas_ascend(&gaps); + gaps.node = mt_mk_node(mte_parent(gaps.node), + mas_parent_enum(&gaps, gaps.node)); old_max_gap = mas_max_gap(&gaps); mte_set_gap(gaps.node, slot, new); - new = mas_max_gap(&gaps); + if (mte_is_root(gaps.node)) + return; + new = mas_max_gap(&gaps); if (new == old_max_gap) return; - if (mte_is_root(gaps.node)) - return; slot = mte_parent_slot(gaps.node); goto ascend; -- 2.50.1