Message ID | 20230808022229.1560559-1-xiongwei.song@windriver.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | mm/memcontrol: add tips for kmem.slabinfo | expand |
On Tue, Aug 08, 2023 at 10:22:29AM +0800, xiongwei.song@windriver.com wrote: > From: Xiongwei Song <xiongwei.song@windriver.com> > > No any output from kmem.slabinfo, which is not friendly. Adding > tips for it. What happens to tools which look in this file?
On Tue, Aug 08, 2023 at 10:22:29AM +0800, xiongwei.song@windriver.com wrote: > From: Xiongwei Song <xiongwei.song@windriver.com> > > No any output from kmem.slabinfo, which is not friendly. Adding > tips for it. > > Signed-off-by: Xiongwei Song <xiongwei.song@windriver.com> > --- > mm/memcontrol.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index e8ca4bdcb03c..58d3bd93890b 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -5002,10 +5002,8 @@ static ssize_t memcg_write_event_control(struct kernfs_open_file *of, > #if defined(CONFIG_MEMCG_KMEM) && (defined(CONFIG_SLAB) || defined(CONFIG_SLUB_DEBUG)) > static int mem_cgroup_slab_show(struct seq_file *m, void *p) > { > - /* > - * Deprecated. > - * Please, take a look at tools/cgroup/memcg_slabinfo.py . > - */ > + seq_puts(m, "This file is deprecated.\n" > + "Please use tools/cgroup/memcg_slabinfo.py, which is in kernel source.\n"); It'll break the ABI. The only possible option here is to use WARN_ON_ONCE(), which will print once to dmesg. But honestly I'm not sure we need it. Thanks!
On Mon 07-08-23 20:59:59, Roman Gushchin wrote: > On Tue, Aug 08, 2023 at 10:22:29AM +0800, xiongwei.song@windriver.com wrote: > > From: Xiongwei Song <xiongwei.song@windriver.com> > > > > No any output from kmem.slabinfo, which is not friendly. Adding > > tips for it. > > > > Signed-off-by: Xiongwei Song <xiongwei.song@windriver.com> > > --- > > mm/memcontrol.c | 6 ++---- > > 1 file changed, 2 insertions(+), 4 deletions(-) > > > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > > index e8ca4bdcb03c..58d3bd93890b 100644 > > --- a/mm/memcontrol.c > > +++ b/mm/memcontrol.c > > @@ -5002,10 +5002,8 @@ static ssize_t memcg_write_event_control(struct kernfs_open_file *of, > > #if defined(CONFIG_MEMCG_KMEM) && (defined(CONFIG_SLAB) || defined(CONFIG_SLUB_DEBUG)) > > static int mem_cgroup_slab_show(struct seq_file *m, void *p) > > { > > - /* > > - * Deprecated. > > - * Please, take a look at tools/cgroup/memcg_slabinfo.py . > > - */ > > + seq_puts(m, "This file is deprecated.\n" > > + "Please use tools/cgroup/memcg_slabinfo.py, which is in kernel source.\n"); > > It'll break the ABI. Agreed > The only possible option here is to use WARN_ON_ONCE(), which will print once to dmesg. > But honestly I'm not sure we need it. There are systems with panic_on_warn configured. I do not think we want those to go down just becasue some random tool tries to read this file.
On Tue, Aug 8, 2023 at 3:30 PM Michal Hocko <mhocko@suse.com> wrote: > > On Mon 07-08-23 20:59:59, Roman Gushchin wrote: > > On Tue, Aug 08, 2023 at 10:22:29AM +0800, xiongwei.song@windriver.com wrote: > > > From: Xiongwei Song <xiongwei.song@windriver.com> > > > > > > No any output from kmem.slabinfo, which is not friendly. Adding > > > tips for it. > > > > > > Signed-off-by: Xiongwei Song <xiongwei.song@windriver.com> > > > --- > > > mm/memcontrol.c | 6 ++---- > > > 1 file changed, 2 insertions(+), 4 deletions(-) > > > > > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > > > index e8ca4bdcb03c..58d3bd93890b 100644 > > > --- a/mm/memcontrol.c > > > +++ b/mm/memcontrol.c > > > @@ -5002,10 +5002,8 @@ static ssize_t memcg_write_event_control(struct kernfs_open_file *of, > > > #if defined(CONFIG_MEMCG_KMEM) && (defined(CONFIG_SLAB) || defined(CONFIG_SLUB_DEBUG)) > > > static int mem_cgroup_slab_show(struct seq_file *m, void *p) > > > { > > > - /* > > > - * Deprecated. > > > - * Please, take a look at tools/cgroup/memcg_slabinfo.py . > > > - */ > > > + seq_puts(m, "This file is deprecated.\n" > > > + "Please use tools/cgroup/memcg_slabinfo.py, which is in kernel source.\n"); > > > > It'll break the ABI. > > Agreed > > > The only possible option here is to use WARN_ON_ONCE(), which will print once to dmesg. > > But honestly I'm not sure we need it. > > There are systems with panic_on_warn configured. I do not think we want > those to go down just becasue some random tool tries to read this file. Thank you for the comments. > -- > Michal Hocko > SUSE Labs >
On Tue, Aug 8, 2023 at 12:00 PM Roman Gushchin <roman.gushchin@linux.dev> wrote: > > On Tue, Aug 08, 2023 at 10:22:29AM +0800, xiongwei.song@windriver.com wrote: > > From: Xiongwei Song <xiongwei.song@windriver.com> > > > > No any output from kmem.slabinfo, which is not friendly. Adding > > tips for it. > > > > Signed-off-by: Xiongwei Song <xiongwei.song@windriver.com> > > --- > > mm/memcontrol.c | 6 ++---- > > 1 file changed, 2 insertions(+), 4 deletions(-) > > > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > > index e8ca4bdcb03c..58d3bd93890b 100644 > > --- a/mm/memcontrol.c > > +++ b/mm/memcontrol.c > > @@ -5002,10 +5002,8 @@ static ssize_t memcg_write_event_control(struct kernfs_open_file *of, > > #if defined(CONFIG_MEMCG_KMEM) && (defined(CONFIG_SLAB) || defined(CONFIG_SLUB_DEBUG)) > > static int mem_cgroup_slab_show(struct seq_file *m, void *p) > > { > > - /* > > - * Deprecated. > > - * Please, take a look at tools/cgroup/memcg_slabinfo.py . > > - */ > > + seq_puts(m, "This file is deprecated.\n" > > + "Please use tools/cgroup/memcg_slabinfo.py, which is in kernel source.\n"); > > It'll break the ABI. > The only possible option here is to use WARN_ON_ONCE(), which will print once to dmesg. > But honestly I'm not sure we need it. Ok, thanks for the comments. > > Thanks! >
On Tue, Aug 8, 2023 at 10:47 AM Matthew Wilcox <willy@infradead.org> wrote: > > On Tue, Aug 08, 2023 at 10:22:29AM +0800, xiongwei.song@windriver.com wrote: > > From: Xiongwei Song <xiongwei.song@windriver.com> > > > > No any output from kmem.slabinfo, which is not friendly. Adding > > tips for it. > > What happens to tools which look in this file? I thought the mem_cgroup_slab_show() function should be removed or provide some useful info. Thanks. >
diff --git a/mm/memcontrol.c b/mm/memcontrol.c index e8ca4bdcb03c..58d3bd93890b 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -5002,10 +5002,8 @@ static ssize_t memcg_write_event_control(struct kernfs_open_file *of, #if defined(CONFIG_MEMCG_KMEM) && (defined(CONFIG_SLAB) || defined(CONFIG_SLUB_DEBUG)) static int mem_cgroup_slab_show(struct seq_file *m, void *p) { - /* - * Deprecated. - * Please, take a look at tools/cgroup/memcg_slabinfo.py . - */ + seq_puts(m, "This file is deprecated.\n" + "Please use tools/cgroup/memcg_slabinfo.py, which is in kernel source.\n"); return 0; } #endif