Messages in this thread | | | From | Vlastimil Babka <> | Subject | [PATCH v3 0/6] SLUB debugfs improvements based on stackdepot | Date | Mon, 4 Apr 2022 18:41:06 +0200 |
| |
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(-)
-- 2.35.1
| |