> On Feb 13, 2024, at 4:37 PM, Chuck Lever <cel@xxxxxxxxxx> wrote: > > In an effort to address slab fragmentation issues reported a few > months ago, I've replaced the use of xarrays for the directory > offset map in "simple" file systems (including tmpfs). > > This patch set passes functional testing and is ready for code > review. But I don't have the facilities to re-run the performance > tests that identified the regression. We expect the performance of > this implementation will need additional improvement. > > Thanks to Liam Howlett for helping me get this working. And note the patches are also available from: https://git.kernel.org/pub/scm/linux/kernel/git/cel/linux.git in the simple-offset-maple branch. > --- > > Chuck Lever (6): > libfs: Rename "so_ctx" > libfs: Define a minimum directory offset > libfs: Add simple_offset_empty() > maple_tree: Add mtree_alloc_cyclic() > libfs: Convert simple directory offsets to use a Maple Tree > libfs: Re-arrange locking in offset_iterate_dir() > > Liam R. Howlett (1): > test_maple_tree: testing the cyclic allocation > > > fs/libfs.c | 125 +++++++++++++++++++++++-------------- > include/linux/fs.h | 6 +- > include/linux/maple_tree.h | 7 +++ > lib/maple_tree.c | 93 +++++++++++++++++++++++++++ > lib/test_maple_tree.c | 44 +++++++++++++ > mm/shmem.c | 4 +- > 6 files changed, 227 insertions(+), 52 deletions(-) > > -- > Chuck Lever > > -- Chuck Lever