diff mbox series

[v3] mm/oom_kill: remove comment and rename is_dump_unreclaim_slabs()

Message ID 20201028153141.GB77196@rlk (mailing list archive)
State New, archived
Headers show
Series [v3] mm/oom_kill: remove comment and rename is_dump_unreclaim_slabs() | expand

Commit Message

Hui Su Oct. 28, 2020, 3:31 p.m. UTC
Comment for is_dump_unreclaim_slabs is not really clear whether it is
meant to instruct how to use the function or whether it is an outdated
information of the past implementation of the function. it doesn't realy
help that is_dump_unreclaim_slabs is hard to grasp on its own.

Rename the helper to should_dump_unreclaim_slabs which should make it
clear what it is meant to do and drop the comment as the purpose
should be pretty evident now.

Signed-off-by: Hui Su <sh_def@163.com>
Acked-by: Michal Hocko <mhocko@suse.com>
---
 mm/oom_kill.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

Comments

Andrew Morton Oct. 28, 2020, 9:53 p.m. UTC | #1
On Wed, 28 Oct 2020 23:31:41 +0800 Hui Su <sh_def@163.com> wrote:

> Comment for is_dump_unreclaim_slabs is not really clear whether it is
> meant to instruct how to use the function or whether it is an outdated
> information of the past implementation of the function. it doesn't realy
> help that is_dump_unreclaim_slabs is hard to grasp on its own.
> 
> Rename the helper to should_dump_unreclaim_slabs which should make it
> clear what it is meant to do and drop the comment as the purpose
> should be pretty evident now.
> 

I think your recent attempt to improve the comment:

/*
 * Check whether unreclaimable slabs amount is greater than all user
 * memory(LRU pages).
 */

was actually somewhat useful, and worth retaining.

It would be better if it explained *why* we're doing this, rather than
simply "what we are doing"?

<looks at the code>

It's actually quite unobvious why we're doing this!
Michal Hocko Oct. 29, 2020, 7:51 a.m. UTC | #2
On Wed 28-10-20 14:53:30, Andrew Morton wrote:
> On Wed, 28 Oct 2020 23:31:41 +0800 Hui Su <sh_def@163.com> wrote:
> 
> > Comment for is_dump_unreclaim_slabs is not really clear whether it is
> > meant to instruct how to use the function or whether it is an outdated
> > information of the past implementation of the function. it doesn't realy
> > help that is_dump_unreclaim_slabs is hard to grasp on its own.
> > 
> > Rename the helper to should_dump_unreclaim_slabs which should make it
> > clear what it is meant to do and drop the comment as the purpose
> > should be pretty evident now.
> > 
> 
> I think your recent attempt to improve the comment:
> 
> /*
>  * Check whether unreclaimable slabs amount is greater than all user
>  * memory(LRU pages).
>  */
> 
> was actually somewhat useful, and worth retaining.
> 
> It would be better if it explained *why* we're doing this, rather than
> simply "what we are doing"?
> 
> <looks at the code>
> 
> It's actually quite unobvious why we're doing this!

It's quite arbitrary criterion to print slab information in the oom
report. The current logic is to dump if there is more slabs than LRU
pages which should be pretty obvious from the code. Why this rather than
e.g. slab * k > lru? Well, no strong reason, AFAIK. We just want to
catch too much slab memory cases.
diff mbox series

Patch

diff --git a/mm/oom_kill.c b/mm/oom_kill.c
index 8b84661a6410..d181e24d7193 100644
--- a/mm/oom_kill.c
+++ b/mm/oom_kill.c
@@ -170,11 +170,7 @@  static bool oom_unkillable_task(struct task_struct *p)
 	return false;
 }
 
-/*
- * Print out unreclaimble slabs info when unreclaimable slabs amount is greater
- * than all user memory (LRU pages)
- */
-static bool is_dump_unreclaim_slabs(void)
+static bool should_dump_unreclaim_slabs(void)
 {
 	unsigned long nr_lru;
 
@@ -463,7 +459,7 @@  static void dump_header(struct oom_control *oc, struct task_struct *p)
 		mem_cgroup_print_oom_meminfo(oc->memcg);
 	else {
 		show_mem(SHOW_MEM_FILTER_NODES, oc->nodemask);
-		if (is_dump_unreclaim_slabs())
+		if (should_dump_unreclaim_slabs())
 			dump_unreclaimable_slab();
 	}
 	if (sysctl_oom_dump_tasks)