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