From 0d821f81fabab0236b1968988661011ab1d33df5 Mon Sep 17 00:00:00 2001 From: "Liam R. Howlett" Date: Mon, 30 Nov 2020 15:22:52 -0500 Subject: [PATCH] maple_tree: Clean up mas_node_store() by using local var Signed-off-by: Liam R. Howlett --- lib/maple_tree.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 596b6eb7429d..904fc63be119 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -3170,7 +3170,7 @@ static inline bool mas_node_store(struct ma_state *mas, void *entry, unsigned char dst_offset, new_end = end; unsigned char offset, offset_end; struct maple_node reuse, *newnode; - unsigned char copy_size; + unsigned char copy_size, max_piv = mt_pivots[mt]; offset = offset_end = mas->offset; if (mas->last == max) { // don't copy this offset @@ -3232,7 +3232,7 @@ static inline bool mas_node_store(struct ma_state *mas, void *entry, } // Store the new entry and range end. - if (dst_offset < mt_pivots[mt]) + if (dst_offset < max_piv) dst_pivots[dst_offset] = mas->last; dst_slots[dst_offset++] = entry; @@ -3243,9 +3243,9 @@ static inline bool mas_node_store(struct ma_state *mas, void *entry, copy_size = end - offset_end + 1; memcpy(dst_slots + dst_offset, slots + offset_end, sizeof(void *) * copy_size); - if (dst_offset < mt_pivots[mt]) { - if (copy_size > mt_pivots[mt] - dst_offset) - copy_size = mt_pivots[mt] - dst_offset; + if (dst_offset < max_piv) { + if (copy_size > max_piv - dst_offset) + copy_size = max_piv - dst_offset; memcpy(dst_pivots + dst_offset, pivots + offset_end, sizeof(unsigned long) * copy_size); } @@ -3334,6 +3334,7 @@ static inline void *_mas_store(struct ma_state *mas, void *entry, bool overwrite if (mas_is_err(mas)) return NULL; + if (mas_start(mas) || mas_is_none(mas) || mas->node == MAS_ROOT) { ret = ma_root_ptr(mas, entry, content, overwrite); if (mas_is_err(mas)) -- 2.50.1