linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RFC 0/7] Use Maple Trees for simple_offset utilities
@ 2024-02-13 21:37 Chuck Lever
  2024-02-13 21:37 ` [PATCH RFC 1/7] libfs: Rename "so_ctx" Chuck Lever
                   ` (7 more replies)
  0 siblings, 8 replies; 29+ messages in thread
From: Chuck Lever @ 2024-02-13 21:37 UTC (permalink / raw)
  To: viro, brauner, jack, hughd, akpm, Liam.Howlett, oliver.sang,
	feng.tang
  Cc: linux-kernel, linux-fsdevel, maple-tree, linux-mm, lkp

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.

---

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


^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2024-02-19 18:06 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-13 21:37 [PATCH RFC 0/7] Use Maple Trees for simple_offset utilities Chuck Lever
2024-02-13 21:37 ` [PATCH RFC 1/7] libfs: Rename "so_ctx" Chuck Lever
2024-02-15 12:42   ` Jan Kara
2024-02-13 21:37 ` [PATCH RFC 2/7] libfs: Define a minimum directory offset Chuck Lever
2024-02-15 12:47   ` Jan Kara
2024-02-13 21:37 ` [PATCH RFC 3/7] libfs: Add simple_offset_empty() Chuck Lever
2024-02-15 12:53   ` Jan Kara
2024-02-13 21:37 ` [PATCH RFC 4/7] maple_tree: Add mtree_alloc_cyclic() Chuck Lever
2024-02-13 21:37 ` [PATCH RFC 5/7] test_maple_tree: testing the cyclic allocation Chuck Lever
2024-02-13 21:38 ` [PATCH RFC 6/7] libfs: Convert simple directory offsets to use a Maple Tree Chuck Lever
2024-02-15 13:06   ` Jan Kara
2024-02-15 13:45     ` Chuck Lever
2024-02-15 14:02       ` Jan Kara
2024-02-16 15:15       ` Christian Brauner
2024-02-18  2:02       ` Oliver Sang
2024-02-18 15:57         ` Chuck Lever
2024-02-19  6:00           ` Oliver Sang
2024-02-13 21:38 ` [PATCH RFC 7/7] libfs: Re-arrange locking in offset_iterate_dir() Chuck Lever
2024-02-15 13:16   ` Jan Kara
2024-02-15 17:00     ` Liam R. Howlett
2024-02-15 17:16       ` Jan Kara
2024-02-15 21:07         ` Liam R. Howlett
2024-02-16 10:15           ` Jan Kara
2024-02-16 15:57             ` Matthew Wilcox
2024-02-16 16:33             ` Liam R. Howlett
2024-02-19 18:06               ` Jan Kara
2024-02-15 17:40       ` Chuck Lever
2024-02-15 21:08         ` Liam R. Howlett
2024-02-13 21:40 ` [PATCH RFC 0/7] Use Maple Trees for simple_offset utilities Chuck Lever III

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).