[PATCH 0/3] align maple tree write paths

From: Sidhartha Kumar
Date: Mon Oct 09 2023 - 16:17:31 EST


This series modifies the store paths in mas_store_gfp() and mas_erase() to
use the newly refined preallocation calculation before their calls to
mas_wr_store_entry(). This will avoid having to do worst case calculations.

Patch 1 abstracts the calculation outside of mas_preallocate() so it can
be used externally.

Patch 2 modifies the write path in mas_store_gfp() to use preallocations
and patch 3 does this in mas_erase().

The motivation for this series is part of the Maple Tree work list[1].


========== TESTING ==============
Testing was done with the maple tree test suite.
maple_tree: 570172962 of 570172962 tests passed

rebased on mm-unstable 10/09/23

[1]: https://lore.kernel.org/linux-mm/20230912172845.o54szwf33hc6p7ee@revolver/T/

Sidhartha Kumar (3):
maple_tree: introduce mas_prealloc_calc()
maple_tree: use preallocations in mas_store_gfp()
maple_tree: use preallocations in mas_erase()

lib/maple_tree.c | 128 ++++++++++++++++++++++++++++++++---------------
1 file changed, 88 insertions(+), 40 deletions(-)

--
2.41.0