32 bit nodes have a larger branching factor. This affects the required
value to cause a height change. Update the spanning store height test
to work for both 64 and 32 bit nodes.
Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
---
tools/testing/radix-tree/maple.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/tools/testing/radix-tree/maple.c b/tools/testing/radix-tree/maple.c
index 90a0db45a33c3..05714c22994ea 100644
--- a/tools/testing/radix-tree/maple.c
+++ b/tools/testing/radix-tree/maple.c
@@ -36327,13 +36327,18 @@ extern void test_kmem_cache_bulk(void);
static inline void check_spanning_store_height(struct maple_tree *mt)
{
int index = 0;
+ int last = 140;
MA_STATE(mas, mt, 0, 0);
mas_lock(&mas);
while (mt_height(mt) != 3) {
mas_store_gfp(&mas, xa_mk_value(index), GFP_KERNEL);
mas_set(&mas, ++index);
}
- mas_set_range(&mas, 90, 140);
+
+ if (MAPLE_32BIT)
+ last = 155; /* 32 bit higher branching factor. */
+
+ mas_set_range(&mas, 90, last);
mas_store_gfp(&mas, xa_mk_value(index), GFP_KERNEL);
MT_BUG_ON(mt, mas_mt_height(&mas) != 2);
mas_unlock(&mas);
--
2.47.2
On 8/27/25 8:30 PM, Liam R. Howlett wrote: > 32 bit nodes have a larger branching factor. This affects the required > value to cause a height change. Update the spanning store height test > to work for both 64 and 32 bit nodes. > > Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com> Fixes: f9d3a963fef4 ("maple_tree: use height and depth consistently") Reviewed-by: Sidhartha Kumar <sidhartha.kumar@oracle.com>> --- > tools/testing/radix-tree/maple.c | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/tools/testing/radix-tree/maple.c b/tools/testing/radix-tree/maple.c > index 90a0db45a33c3..05714c22994ea 100644 > --- a/tools/testing/radix-tree/maple.c > +++ b/tools/testing/radix-tree/maple.c > @@ -36327,13 +36327,18 @@ extern void test_kmem_cache_bulk(void); > static inline void check_spanning_store_height(struct maple_tree *mt) > { > int index = 0; > + int last = 140; > MA_STATE(mas, mt, 0, 0); > mas_lock(&mas); > while (mt_height(mt) != 3) { > mas_store_gfp(&mas, xa_mk_value(index), GFP_KERNEL); > mas_set(&mas, ++index); > } > - mas_set_range(&mas, 90, 140); > + > + if (MAPLE_32BIT) > + last = 155; /* 32 bit higher branching factor. */ > + > + mas_set_range(&mas, 90, last); > mas_store_gfp(&mas, xa_mk_value(index), GFP_KERNEL); > MT_BUG_ON(mt, mas_mt_height(&mas) != 2); > mas_unlock(&mas);
© 2016 - 2025 Red Hat, Inc.