aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Hocko <[email protected]>2013-07-08 16:00:27 -0700
committerLinus Torvalds <[email protected]>2013-07-09 10:33:24 -0700
commitfa460c2d37870e0a6f94c70e8b76d05ca11b6db0 (patch)
tree4bcee4af7ad147b1331e03910d66cc34c4e0e8dd
parent493af578040e690f93f0fc8d9e7667ffff8155bb (diff)
Revert "memcg: avoid dangling reference count in creation failure"
This reverts commit e4715f01be697a. mem_cgroup_put is hierarchy aware so mem_cgroup_put(memcg) already drops an additional reference from all parents so the additional mem_cgrroup_put(parent) potentially causes use-after-free. Signed-off-by: Michal Hocko <[email protected]> Signed-off-by: Li Zefan <[email protected]> Acked-by: KAMEZAWA Hiroyuki <[email protected]> Cc: Hugh Dickins <[email protected]> Cc: Tejun Heo <[email protected]> Cc: Glauber Costa <[email protected]> Cc: Johannes Weiner <[email protected]> Cc: <[email protected]> [3.9+] Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
-rw-r--r--mm/memcontrol.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 64f726599ff0..6b73d8657d64 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -6352,8 +6352,6 @@ mem_cgroup_css_online(struct cgroup *cont)
* call __mem_cgroup_free, so return directly
*/
mem_cgroup_put(memcg);
- if (parent->use_hierarchy)
- mem_cgroup_put(parent);
}
return error;
}