Re: [PATCH 1/2 v2] memcg: make oom_lock 0 and 1 based rather thancoutner

From: KAMEZAWA Hiroyuki
Date: Thu Jul 21 2011 - 20:23:14 EST


On Thu, 21 Jul 2011 13:58:17 -0700
Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:

> On Wed, 13 Jul 2011 13:05:49 +0200
> Michal Hocko <mhocko@xxxxxxx> wrote:
>
> > @@ -1893,6 +1942,8 @@ bool mem_cgroup_handle_oom(struct mem_cgroup *mem, gfp_t mask)
>
> does:
>
> : memcg_wakeup_oom(mem);
> : mutex_unlock(&memcg_oom_mutex);
> :
> : mem_cgroup_unmark_under_oom(mem);
> :
> : if (test_thread_flag(TIF_MEMDIE) || fatal_signal_pending(current))
> : return false;
> : /* Give chance to dying process */
> : schedule_timeout(1);
> : return true;
> : }
>
> Calling schedule_timeout() in state TASK_RUNNING is equivalent to
> calling schedule() and then pointlessly wasting some CPU cycles.
>
Ouch (--;

> Someone might want to take a look at that, and wonder why this bug
> wasn't detected in testing ;)
>
I wonder just removing this is okay....because we didn't noticed this
in our recent oom tests.

I'll do some.

Thanks,
-Kame

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/