[PATCH v5 3/5] maple_tree: not necessary to check index/last again
Wei Yang
richard.weiyang at gmail.com
Thu Oct 31 16:16:25 PDT 2024
Before calling mas_new_root(), the range has been checked.
Signed-off-by: Wei Yang <richard.weiyang at gmail.com>
CC: Liam R. Howlett <Liam.Howlett at Oracle.com>
CC: Sidhartha Kumar <sidhartha.kumar at oracle.com>
CC: Lorenzo Stoakes <lorenzo.stoakes at oracle.com>
Reviewed-by: Liam R. Howlett <Liam.Howlett at Oracle.com>
---
v4: add WARN_ON_ONCE() to check mis-usage.
---
lib/maple_tree.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/maple_tree.c b/lib/maple_tree.c
index 071d3055f1fa..4900f182e99d 100644
--- a/lib/maple_tree.c
+++ b/lib/maple_tree.c
@@ -3670,7 +3670,9 @@ static inline void mas_new_root(struct ma_state *mas, void *entry)
void __rcu **slots;
unsigned long *pivots;
- if (!entry && !mas->index && mas->last == ULONG_MAX) {
+ WARN_ON_ONCE(mas->index || mas->last != ULONG_MAX);
+
+ if (!entry) {
mas->depth = 0;
mas_set_height(mas);
rcu_assign_pointer(mas->tree->ma_root, entry);
--
2.34.1
More information about the maple-tree
mailing list