Re: [PATCH] mm/slab: Add slabreclaim flag to slabinfo

From: Christoph Lameter (Ampere)
Date: Mon Feb 05 2024 - 12:54:44 EST


On Mon, 5 Feb 2024, Vlastimil Babka wrote:

On 2/4/24 14:09, Greg KH wrote:
On Wed, Jan 31, 2024 at 05:44:42PM +0800, Fangzheng Zhang wrote:
In order to enhance slab debugging, we add slabreclaim flag to
slabinfo. Slab type is also an important analysis point in slabinfo
for per slab, when various problems such as memory leaks or memory
statistics occur.

Signed-off-by: Fangzheng Zhang <fangzheng.zhang@xxxxxxxxxx>
---
mm/slab_common.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/mm/slab_common.c b/mm/slab_common.c
index 238293b1dbe1..aeeb2bfe6dda 100644
--- a/mm/slab_common.c
+++ b/mm/slab_common.c
@@ -1038,7 +1038,7 @@ static void print_slabinfo_header(struct seq_file *m)
seq_puts(m, "slabinfo - version: 2.1\n");
seq_puts(m, "# name <active_objs> <num_objs> <objsize> <objperslab> <pagesperslab>");
seq_puts(m, " : tunables <limit> <batchcount> <sharedfactor>");
- seq_puts(m, " : slabdata <active_slabs> <num_slabs> <sharedavail>");
+ seq_puts(m, " : slabdata <active_slabs> <num_slabs> <sharedavail> <slabreclaim>");

Doesn't this change the slabinfo version number above? Where is this
change documented so that userspace knows about it?

I have never seen such a document. I would suggest incrementing the version to 2.2 since there is a minor extension of the format.

I tried to remove /proc/slabinfo in the past and have people use the more versatile /sys/kernel/slab interface. But /proc/slabinfo has a long legacy.

Could we 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 for a long time?