From: Glauber Costa <glommer@parallels.com>
To: Michal Hocko <mhocko@suse.cz>
Cc: cgroups@vger.kernel.org, linux-mm@kvack.org,
kamezawa.hiroyu@jp.fujitsu.com,
Johannes Weiner <hannes@cmpxchg.org>, Tejun Heo <tj@kernel.org>
Subject: Re: [PATCH v2 4/7] memcg: fast hierarchy-aware child test.
Date: Mon, 21 Jan 2013 13:19:39 +0400 [thread overview]
Message-ID: <50FD082B.9050802@parallels.com> (raw)
In-Reply-To: <20130121091507.GC7798@dhcp22.suse.cz>
On 01/21/2013 01:15 PM, Michal Hocko wrote:
> On Mon 21-01-13 12:41:24, Glauber Costa wrote:
>> On 01/21/2013 12:34 PM, Michal Hocko wrote:
> [...]
>>> If you really insist on not using
>>> children directly then do something like:
>>> struct cgroup *pos;
>>>
>>> if (!memcg->use_hierarchy)
>>> cgroup_for_each_child(pos, memcg->css.cgroup)
>>> return true;
>>>
>>> return false;
>>>
>> I don't oppose that.
>
> OK, I guess I could live with that ;)
>
>>> This still has an issue that a change (e.g. vm_swappiness) that requires
>>> this check will fail even though the child creation fails after it is
>>> made visible (e.g. during css_online).
>>>
>> Is it a problem ?
>
> I thought you were considering this a problem. Quoting from patch 3/7
> "
>> This calls for troubles and I do not think the win you get is really
>> worth it. All it gives you is basically that you can change an
>> inheritable attribute while your child is between css_alloc and
>> css_online and so your attribute change doesn't fail if the child
>> creation fails between those two. Is this the case you want to
>> handle? Does it really even matter?
>
> I think it matters a lot. Aside from the before vs after discussion to
> which I've already conceded, without this protection we can't guarantee
> that we won't end up with an inconsistent value of the tunables between
> parent and child.
> "
>
> Just to make it clear. I do not see this failure as a big problem. We
> can fix it by adding an Online check later if somebody complains.
>
I am talking here about groups that appear between the alloc and online
callbacks.
You mentioned child creation failures. Those are very different
scenarios. I am personally not a lot bothered if we deny a value change
during child creation due to that child, and the allocation turns out to
fail.
IOW: denying a value change because we falsely believe there is a child
is a lot less serious than allowing a value change due to our ignorance
of child existence and ending up with an inconsistent value set.
--
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: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2013-01-21 9:19 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-11 9:45 [PATCH v2 0/7] replace cgroup_lock with local memcg lock Glauber Costa
2013-01-11 9:45 ` [PATCH v2 1/7] memcg: prevent changes to move_charge_at_immigrate during task attach Glauber Costa
[not found] ` <1357897527-15479-2-git-send-email-glommer-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2013-01-18 14:16 ` Michal Hocko
2013-01-18 14:16 ` Michal Hocko
2013-01-11 9:45 ` [PATCH v2 2/7] memcg: split part of memcg creation to css_online Glauber Costa
2013-01-18 15:25 ` Michal Hocko
[not found] ` <20130118152526.GF10701-2MMpYkNvuYDjFM9bn6wA6Q@public.gmane.org>
2013-01-18 19:28 ` Glauber Costa
2013-01-18 19:28 ` Glauber Costa
2013-01-21 7:33 ` Glauber Costa
2013-01-21 7:33 ` Glauber Costa
[not found] ` <50FCEF40.8040709-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2013-01-21 8:38 ` Michal Hocko
2013-01-21 8:38 ` Michal Hocko
2013-01-21 8:42 ` Glauber Costa
2013-01-11 9:45 ` [PATCH v2 3/7] memcg: provide online test for memcg Glauber Costa
2013-01-18 15:37 ` Michal Hocko
2013-01-18 15:56 ` Michal Hocko
[not found] ` <20130118155621.GH10701-2MMpYkNvuYDjFM9bn6wA6Q@public.gmane.org>
2013-01-18 19:42 ` Glauber Costa
2013-01-18 19:42 ` Glauber Costa
2013-01-18 19:43 ` Glauber Costa
[not found] ` <20130118153715.GG10701-2MMpYkNvuYDjFM9bn6wA6Q@public.gmane.org>
2013-01-18 19:41 ` Glauber Costa
2013-01-18 19:41 ` Glauber Costa
2013-01-11 9:45 ` [PATCH v2 4/7] memcg: fast hierarchy-aware child test Glauber Costa
[not found] ` <1357897527-15479-5-git-send-email-glommer-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2013-01-18 16:06 ` Michal Hocko
2013-01-18 16:06 ` Michal Hocko
[not found] ` <20130118160610.GI10701-2MMpYkNvuYDjFM9bn6wA6Q@public.gmane.org>
2013-01-21 7:58 ` Glauber Costa
2013-01-21 7:58 ` Glauber Costa
[not found] ` <50FCF539.6070000-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2013-01-21 8:34 ` Michal Hocko
2013-01-21 8:34 ` Michal Hocko
2013-01-21 8:41 ` Glauber Costa
[not found] ` <50FCFF34.9070308-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2013-01-21 9:15 ` Michal Hocko
2013-01-21 9:15 ` Michal Hocko
2013-01-21 9:19 ` Glauber Costa [this message]
2013-01-11 9:45 ` [PATCH v2 5/7] May god have mercy on my soul Glauber Costa
[not found] ` <1357897527-15479-6-git-send-email-glommer-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2013-01-18 16:07 ` Michal Hocko
2013-01-18 16:07 ` Michal Hocko
2013-01-11 9:45 ` [PATCH v2 6/7] memcg: replace cgroup_lock with memcg specific memcg_lock Glauber Costa
[not found] ` <1357897527-15479-7-git-send-email-glommer-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2013-01-18 16:21 ` Michal Hocko
2013-01-18 16:21 ` Michal Hocko
2013-01-11 9:45 ` [PATCH v2 7/7] memcg: increment static branch right after limit set Glauber Costa
[not found] ` <1357897527-15479-8-git-send-email-glommer-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2013-01-18 16:23 ` Michal Hocko
2013-01-18 16:23 ` Michal Hocko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50FD082B.9050802@parallels.com \
--to=glommer@parallels.com \
--cc=cgroups@vger.kernel.org \
--cc=hannes@cmpxchg.org \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=linux-mm@kvack.org \
--cc=mhocko@suse.cz \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.