Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755313Ab2HOOKr (ORCPT ); Wed, 15 Aug 2012 10:10:47 -0400 Received: from cantor2.suse.de ([195.135.220.15]:50066 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754636Ab2HOOKp (ORCPT ); Wed, 15 Aug 2012 10:10:45 -0400 Date: Wed, 15 Aug 2012 16:10:41 +0200 From: Michal Hocko To: Glauber Costa Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, cgroups@vger.kernel.org, devel@openvz.org, Johannes Weiner , Andrew Morton , kamezawa.hiroyu@jp.fujitsu.com, Christoph Lameter , David Rientjes , Pekka Enberg Subject: Re: [PATCH v2 04/11] kmem accounting basic infrastructure Message-ID: <20120815141041.GK23985@dhcp22.suse.cz> References: <1344517279-30646-1-git-send-email-glommer@parallels.com> <1344517279-30646-5-git-send-email-glommer@parallels.com> <20120814162144.GC6905@dhcp22.suse.cz> <502B6D03.1080804@parallels.com> <20120815123931.GF23985@dhcp22.suse.cz> <502B9BD4.4070003@parallels.com> <20120815130228.GH23985@dhcp22.suse.cz> <502B9E5F.2080907@parallels.com> <20120815132621.GJ23985@dhcp22.suse.cz> <502BA4AC.9040000@parallels.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <502BA4AC.9040000@parallels.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2622 Lines: 60 On Wed 15-08-12 17:31:24, Glauber Costa wrote: > On 08/15/2012 05:26 PM, Michal Hocko wrote: > > On Wed 15-08-12 17:04:31, Glauber Costa wrote: > >> On 08/15/2012 05:02 PM, Michal Hocko wrote: > >>> On Wed 15-08-12 16:53:40, Glauber Costa wrote: > >>> [...] > >>>>>>> This doesn't check for the hierachy so kmem_accounted might not be in > >>>>>>> sync with it's parents. mem_cgroup_create (below) needs to copy > >>>>>>> kmem_accounted down from the parent and the above needs to check if this > >>>>>>> is a similar dance like mem_cgroup_oom_control_write. > >>>>>>> > >>>>>> > >>>>>> I don't see why we have to. > >>>>>> > >>>>>> I believe in a A/B/C hierarchy, C should be perfectly able to set a > >>>>>> different limit than its parents. Note that this is not a boolean. > >>>>> > >>>>> Ohh, I wasn't clear enough. I am not against setting the _limit_ I just > >>>>> meant that the kmem_accounted should be consistent within the hierarchy. > >>>>> > >>>> > >>>> If a parent of yours is accounted, you get accounted as well. This is > >>>> not the state in this patch, but gets added later. Isn't this enough ? > >>> > >>> But if the parent is not accounted, you can set the children to be > >>> accounted, right? Or maybe this is changed later in the series? I didn't > >>> get to the end yet. > >>> > >> > >> Yes, you can. Do you see any problem with that? > > > > Well, if a child contributes with the kmem charges upwards the hierachy > > then a parent can have kmem.usage > 0 with disabled accounting. > > I am not saying this is a no-go but it definitely is confusing and I do > > not see any good reason for it. I've considered it as an overlook rather > > than a deliberate design decision. > > > > No, it is not an overlook. > It is theoretically possible to skip accounting on non-limited parents, > but how expensive is that? This is, indeed, confusing. > > Of course I can be biased, but the way I see it, once you have > hierarchy, you account everything your child accounts. > > I really don't see what is the concern here. OK, I missed an important point that kmem_accounted is not exported to the userspace (I thought it would be done later in the series) which is not the case so actually nobody get's confused by the inconsistency because it is about RESOURCE_MAX which they see in both cases. Sorry about the confusion! -- Michal Hocko SUSE Labs -- 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/