Re: [PATCH 3/3] memcg: oom kill disable and oom status

KAMEZAWA Hiroyuki
2010-03-16T00:06:48Z

On Mon, 15 Mar 2010 15:00:20 -0700
Andrew Morton <akpm@linux-foundation.org> wrote:

> On Fri, 12 Mar 2010 14:37:53 +0900
> KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> wrote:
>
> >
> > I haven't get enough comment to this patch itself. But works well.
> > Feel free to request me if you want me to change some details.
> >
> > ==
> > From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
> >
> > This adds a feature to disable oom-killer for memcg, if disabled,
> > of course, tasks under memcg will stop.
> >
> > But now, we have oom-notifier for memcg. And the world around
> > memcg is not under out-of-memory. memcg's out-of-memory just
> > shows memcg hits limit. Then, administrator or
> > management daemon can recover the situation by
> > - kill some process
> > - enlarge limit, add more swap.
> > - migrate some tasks
> > - remove file cache on tmps (difficult ?)
> >
> > Unlike OOM-Kill by the kernel, the users can take snapshot or coredump
> > of guilty process, cgroups.
> >
>
> Looks complicated.
>
In code, hooks are in
- usage is reduced.
- limit is enlarged.

Maybe my explanation is bad. It's simpler than it sounds.

> > --- mmotm-2.6.34-Mar9.orig/mm/memcontrol.c
> > +++ mmotm-2.6.34-Mar9/mm/memcontrol.c
> > @@ -235,7 +235,8 @@ struct mem_cgroup {
> > * mem_cgroup ? And what type of charges should we move ?
> > */
> > unsigned long move_charge_at_immigrate;
> > -
> > + /* Disable OOM killer */
> > + unsigned long oom_kill_disable;
> > /*
> > * percpu counter.
> > */
>
> Would have been better to make this `int' or `bool', and put it next to
> some other 32-bit value in this struct.
>

Sure, will fix.

-Kame

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