]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
maple_tree: introduce mas_wr_prealloc_setup()
authorSidhartha Kumar <sidhartha.kumar@oracle.com>
Wed, 13 Dec 2023 05:04:50 +0000 (21:04 -0800)
committerLiam R. Howlett <Liam.Howlett@oracle.com>
Sat, 20 Apr 2024 01:40:08 +0000 (21:40 -0400)
Introduce a helper function, mas_wr_prealoc_setup(), that will set up a
maple write state in order to start a walk of a maple tree.

Signed-off-by: Sidhartha Kumar <sidhartha.kumar@oracle.com>
lib/maple_tree.c

index 6f241bb38799201defb1b31154920dcc257b9831..a169bea914416e02bd0580b29d1a23f0788bf062 100644 (file)
@@ -5354,6 +5354,13 @@ reset:
        mas_reset(wr_mas->mas);
 }
 
+static inline void mas_wr_prealloc_setup(struct ma_wr_state *wr_mas)
+{
+       struct ma_state *mas = wr_mas->mas;
+
+       mas_wr_store_setup(wr_mas);
+       wr_mas->content = mas_start(mas);
+}
 /* Interface */
 
 /**
@@ -5459,8 +5466,7 @@ int mas_preallocate(struct ma_state *mas, void *entry, gfp_t gfp)
        if (unlikely(!mas->index && mas->last == ULONG_MAX))
                goto ask_now;
 
-       mas_wr_store_setup(&wr_mas);
-       wr_mas.content = mas_start(mas);
+       mas_wr_prealloc_setup(&wr_mas);
        /* Root expand */
        if (unlikely(mas_is_none(mas) || mas_is_ptr(mas)))
                goto ask_now;