Re: [PATCH v2] mm/oom_kill: count global and memory cgroup oom kills

From: David Rientjes
Date: Tue May 30 2017 - 00:29:59 EST


On Thu, 25 May 2017, Konstantin Khlebnikov wrote:

> diff --git a/mm/oom_kill.c b/mm/oom_kill.c
> index 04c9143a8625..dd30a045ef5b 100644
> --- a/mm/oom_kill.c
> +++ b/mm/oom_kill.c
> @@ -876,6 +876,11 @@ static void oom_kill_process(struct oom_control *oc, const char *message)
> /* Get a reference to safely compare mm after task_unlock(victim) */
> mm = victim->mm;
> mmgrab(mm);
> +
> + /* Raise event before sending signal: reaper must see this */

How is the oom reaper involved here?

> + count_vm_event(OOM_KILL);
> + mem_cgroup_count_vm_event(mm, OOM_KILL);
> +
> /*
> * We should send SIGKILL before setting TIF_MEMDIE in order to prevent
> * the OOM victim from depleting the memory reserves from the user