[PATCH V2 2/2] Documentation: filesystems: introduce proc/slabinfo to users

From: Fangzheng Zhang
Date: Sun Feb 18 2024 - 22:20:46 EST


Supplement slabinfo-version 2.2 details in proc.rst, so that
users can have the status of slabinfo at a glance. And mark
the optimization work that will be performed on proc/slabinfo
in the next step.

Signed-off-by: Fangzheng Zhang <fangzheng.zhang@xxxxxxxxxx>
---
Documentation/filesystems/proc.rst | 33 ++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

diff --git a/Documentation/filesystems/proc.rst b/Documentation/filesystems/proc.rst
index 104c6d047d9b..89ab92f6be2d 100644
--- a/Documentation/filesystems/proc.rst
+++ b/Documentation/filesystems/proc.rst
@@ -892,6 +892,39 @@ Linux uses slab pools for memory management above page level in version 2.2.
Commonly used objects have their own slab pool (such as network buffers,
directory cache, and so on).

+Example output. You can have all of these fields in slabinfo - version: 2.2.
+
+::
+
+ > cat /proc/slabinfo
+
+ slabinfo - version: 2.2
+ # name <active_objs> <num_objs> <objsize> <objperslab> <pagesperslab> : tunables <limit> <batchcount> <sharedfactor> : slabdata <active_slabs> <num_slabs> <sharedavail> <slabreclaim>
+ zspage 2240 2240 72 56 1 : tunables 0 0 0 : slabdata 40 40 0 0
+ zs_handle 17408 17408 8 512 1 : tunables 0 0 0 : slabdata 34 34 0 0
+ f2fs_xattr_entry-254:48 312 312 208 39 2 : tunables 0 0 0 : slabdata 8 8 0 1
+ imsbr_flow 102 102 80 51 1 : tunables 0 0 0 : slabdata 2 2 0 0
+ ......
+ ext4_groupinfo_4k 312 312 208 39 2 : tunables 0 0 0 : slabdata 8 8 0 1
+ dm_verity_fec_buffers 8 8 4048 8 8 : tunables 0 0 0 : slabdata 1 1 0 0
+ dm_bufio_buffer 28 28 144 28 1 : tunables 0 0 0 : slabdata 1 1 0 1
+ ......
+ kernfs_iattrs_cache 4010 4116 96 42 1 : tunables 0 0 0 : slabdata 98 98 0 0
+ kernfs_node_cache 67169 67232 128 32 1 : tunables 0 0 0 : slabdata 2101 2101 0 0
+ mnt_cache 5624 5700 320 25 2 : tunables 0 0 0 : slabdata 228 228 0 0
+ filp 15840 17400 320 25 2 : tunables 0 0 0 : slabdata 696 696 0 0
+ ......
+ kmalloc-32 30398 32384 32 128 1 : tunables 0 0 0 : slabdata 253 253 0 0
+ kmalloc-16 31566 31744 16 256 1 : tunables 0 0 0 : slabdata 124 124 0 0
+ kmalloc-8 51623 51712 8 512 1 : tunables 0 0 0 : slabdata 101 101 0 0
+ kmem_cache_node 416 416 128 32 1 : tunables 0 0 0 : slabdata 13 13 0 0
+ kmem_cache 416 416 256 32 2 : tunables 0 0 0 : slabdata 13 13 0 0
+
+Note, <slabreclaim> comes from the collected results in the file
+/sys/kernel/slab/$cache/reclaim_account. Next, we will mark /proc/slabinfo
+as deprecated and recommend the use of either sysfs directly or
+use of the "slabinfo" tool that we have been providing in linux/tools/mm.
+
::

> cat /proc/buddyinfo
--
2.17.1