mbox series

[v3,0/6] SLUB debugfs improvements based on stackdepot

Message ID 20220404164112.18372-1-vbabka@suse.cz (mailing list archive)
Headers show
Series SLUB debugfs improvements based on stackdepot | expand

Message

Vlastimil Babka April 4, 2022, 4:41 p.m. UTC
Changes since v2:
https://lore.kernel.org/all/20220302173122.11939-1-vbabka@suse.cz/

- Reworked patch 1 based on feedback from Mike and Marco. Updated patch
  3 accordingly.
- Rebased to v5.18-rc1
- Add acks/reviews. Thanks all.

Hi,

this series combines and revives patches from Oliver's last year
bachelor thesis (where I was the advisor) that make SLUB's debugfs
files alloc_traces and free_traces more useful.
The resubmission was blocked on stackdepot changes that are now merged,
as explained in patch 3.

Patch 1 makes it possible to use stack depot without bootstrap issues.

Patch 2 is a new preparatory cleanup.

Patch 3 originally submitted here [1], was merged to mainline but
reverted for stackdepot related issues as explained in the patch.

Patches 4-6 originally submitted as RFC here [2]. In this submission I
have omitted the new file 'all_objects' (patch 3/3 in [2]) as it might
be considered too intrusive so I will postpone it for later. The docs
patch is adjusted accordingly.

Also available in git, based on v5.18-rc1:
https://git.kernel.org/pub/scm/linux/kernel/git/vbabka/linux.git/log/?h=slub-stackdepot-v3r2

I plan to add this to the slab (-next) tree for 5.19. lkp has been
testing this already from my git, which resolved some more corner cases
and recently only uncovered a pre-existing kfence bug [3]

[1] https://lore.kernel.org/all/20210414163434.4376-1-glittao@gmail.com/
[2] https://lore.kernel.org/all/20210521121127.24653-1-glittao@gmail.com/
[3] https://lore.kernel.org/all/8368021e-86c3-a93f-b29d-efed02135c41@suse.cz/


Oliver Glitta (4):
  mm/slub: use stackdepot to save stack trace in objects
  mm/slub: distinguish and print stack traces in debugfs files
  mm/slub: sort debugfs output by frequency of stack traces
  slab, documentation: add description of debugfs files for SLUB caches

Vlastimil Babka (2):
  lib/stackdepot: allow requesting early initialization dynamically
  mm/slub: move struct track init out of set_track()

 Documentation/vm/slub.rst  |  64 ++++++++++++++++++
 include/linux/stackdepot.h |  26 +++++--
 init/Kconfig               |   1 +
 lib/Kconfig.debug          |   1 +
 lib/stackdepot.c           |  66 ++++++++++++------
 mm/page_owner.c            |   9 ++-
 mm/slab_common.c           |   5 ++
 mm/slub.c                  | 135 +++++++++++++++++++++++++------------
 8 files changed, 234 insertions(+), 73 deletions(-)