From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ee0-f51.google.com (mail-ee0-f51.google.com [74.125.83.51]) by kanga.kvack.org (Postfix) with ESMTP id 974AC6B0035 for ; Tue, 29 Apr 2014 11:43:52 -0400 (EDT) Received: by mail-ee0-f51.google.com with SMTP id c13so475657eek.24 for ; Tue, 29 Apr 2014 08:43:51 -0700 (PDT) Received: from mx2.suse.de (cantor2.suse.de. [195.135.220.15]) by mx.google.com with ESMTPS id z2si27444977eeo.184.2014.04.29.08.43.50 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 29 Apr 2014 08:43:50 -0700 (PDT) Date: Tue, 29 Apr 2014 17:43:46 +0200 From: Michal Hocko Subject: Re: Protection against container fork bombs [WAS: Re: memcg with kmem limit doesn't recover after disk i/o causes limit to be hit] Message-ID: <20140429154345.GH15058@dhcp22.suse.cz> References: <20140418155939.GE4523@dhcp22.suse.cz> <5351679F.5040908@parallels.com> <20140420142830.GC22077@alpha.arachsys.com> <20140422143943.20609800@oracle.com> <20140422200531.GA19334@alpha.arachsys.com> <535758A0.5000500@yuhu.biz> <20140423084942.560ae837@oracle.com> <20140428180025.GC25689@ubuntumail> <20140429072515.GB15058@dhcp22.suse.cz> <20140429130353.GA27354@ubuntumail> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20140429130353.GA27354@ubuntumail> Sender: owner-linux-mm@kvack.org List-ID: To: Serge Hallyn Cc: Richard Davies , Vladimir Davydov , Marian Marinov , Max Kellermann , Tim Hockin , Frederic Weisbecker , containers@lists.linux-foundation.org, Daniel Walsh , cgroups@vger.kernel.org, Glauber Costa , linux-mm@kvack.org, William Dauchy , Johannes Weiner , Tejun Heo , David Rientjes On Tue 29-04-14 13:03:53, Serge Hallyn wrote: > Quoting Michal Hocko (mhocko@suse.cz): > > On Mon 28-04-14 18:00:25, Serge Hallyn wrote: > > > Quoting Dwight Engen (dwight.engen@oracle.com): > > > > On Wed, 23 Apr 2014 09:07:28 +0300 > > > > Marian Marinov wrote: > > > > > > > > > On 04/22/2014 11:05 PM, Richard Davies wrote: > > > > > > Dwight Engen wrote: > > > > > >> Richard Davies wrote: > > > > > >>> Vladimir Davydov wrote: > > > > > >>>> In short, kmem limiting for memory cgroups is currently broken. > > > > > >>>> Do not use it. We are working on making it usable though. > > > > > > ... > > > > > >>> What is the best mechanism available today, until kmem limits > > > > > >>> mature? > > > > > >>> > > > > > >>> RLIMIT_NPROC exists but is per-user, not per-container. > > > > > >>> > > > > > >>> Perhaps there is an up-to-date task counter patchset or similar? > > > > > >> > > > > > >> I updated Frederic's task counter patches and included Max > > > > > >> Kellermann's fork limiter here: > > > > > >> > > > > > >> http://thread.gmane.org/gmane.linux.kernel.containers/27212 > > > > > >> > > > > > >> I can send you a more recent patchset (against 3.13.10) if you > > > > > >> would find it useful. > > > > > > > > > > > > Yes please, I would be interested in that. Ideally even against > > > > > > 3.14.1 if you have that too. > > > > > > > > > > Dwight, do you have these patches in any public repo? > > > > > > > > > > I would like to test them also. > > > > > > > > Hi Marian, I put the patches against 3.13.11 and 3.14.1 up at: > > > > > > > > git://github.com/dwengen/linux.git cpuacct-task-limit-3.13 > > > > git://github.com/dwengen/linux.git cpuacct-task-limit-3.14 > > > > > > Thanks, Dwight. FWIW I'm agreed with Tim, Dwight, Richard, and Marian > > > that a task limit would be a proper cgroup extension, and specifically > > > that approximating that with a kmem limit is not a reasonable substitute. > > > > The current state of the kmem limit, which is improving a lot thanks to > > Vladimir, is not a reason for a new extension/controller. We are just > > not yet there. > > It has nothing to do with the state of the limit. I simply don't > believe that emulating RLIMIT_NPROC by controlling stack size is a > good idea. I was not the one who decided that the kmem extension of memory controller should cover also the task number as a side effect but still the decision sounds plausible to me because the kmem approach is more generic. Btw. if this is a problem them please go ahead and continue the original discussion (http://marc.info/?l=linux-kernel&m=133417075309923) with the other people involved. I do not see any new arguments here, except that the kmem implementation is not ready yet. -- Michal Hocko SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org