From: Xiongwei Song <[email protected]>
No any output from kmem.slabinfo, which is not friendly. Adding
tips for it.
Signed-off-by: Xiongwei Song <[email protected]>
---
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");
return 0;
}
#endif
--
2.37.3
On Tue, Aug 08, 2023 at 10:22:29AM +0800, [email protected] wrote:
> From: Xiongwei Song <[email protected]>
>
> No any output from kmem.slabinfo, which is not friendly. Adding
> tips for it.
What happens to tools which look in this file?
On Mon 07-08-23 20:59:59, Roman Gushchin wrote:
> On Tue, Aug 08, 2023 at 10:22:29AM +0800, [email protected] wrote:
> > From: Xiongwei Song <[email protected]>
> >
> > No any output from kmem.slabinfo, which is not friendly. Adding
> > tips for it.
> >
> > Signed-off-by: Xiongwei Song <[email protected]>
> > ---
> > 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.
--
Michal Hocko
SUSE Labs
On Tue, Aug 08, 2023 at 10:22:29AM +0800, [email protected] wrote:
> From: Xiongwei Song <[email protected]>
>
> No any output from kmem.slabinfo, which is not friendly. Adding
> tips for it.
>
> Signed-off-by: Xiongwei Song <[email protected]>
> ---
> 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 Tue, Aug 8, 2023 at 10:47 AM Matthew Wilcox <[email protected]> wrote:
>
> On Tue, Aug 08, 2023 at 10:22:29AM +0800, [email protected] wrote:
> > From: Xiongwei Song <[email protected]>
> >
> > 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.
>
On Tue, Aug 8, 2023 at 12:00 PM Roman Gushchin <[email protected]> wrote:
>
> On Tue, Aug 08, 2023 at 10:22:29AM +0800, [email protected] wrote:
> > From: Xiongwei Song <[email protected]>
> >
> > No any output from kmem.slabinfo, which is not friendly. Adding
> > tips for it.
> >
> > Signed-off-by: Xiongwei Song <[email protected]>
> > ---
> > 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 3:30 PM Michal Hocko <[email protected]> wrote:
>
> On Mon 07-08-23 20:59:59, Roman Gushchin wrote:
> > On Tue, Aug 08, 2023 at 10:22:29AM +0800, [email protected] wrote:
> > > From: Xiongwei Song <[email protected]>
> > >
> > > No any output from kmem.slabinfo, which is not friendly. Adding
> > > tips for it.
> > >
> > > Signed-off-by: Xiongwei Song <[email protected]>
> > > ---
> > > 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
>