summaryrefslogtreecommitdiffstats
path: root/ipc
diff options
context:
space:
mode:
authorKirill Tkhai2018-08-03 00:36:01 +0200
committerLinus Torvalds2018-08-03 01:03:40 +0200
commit7e97de0b033bcac4fa9a35cef72e0c06e6a22c67 (patch)
tree7c0d969f5f2e12e34e4f53a94f42bcba82a4ceed /ipc
parentMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net (diff)
downloadkernel-qcow2-linux-7e97de0b033bcac4fa9a35cef72e0c06e6a22c67.tar.gz
kernel-qcow2-linux-7e97de0b033bcac4fa9a35cef72e0c06e6a22c67.tar.xz
kernel-qcow2-linux-7e97de0b033bcac4fa9a35cef72e0c06e6a22c67.zip
memcg: remove memcg_cgroup::id from IDR on mem_cgroup_css_alloc() failure
In case of memcg_online_kmem() failure, memcg_cgroup::id remains hashed in mem_cgroup_idr even after memcg memory is freed. This leads to leak of ID in mem_cgroup_idr. This patch adds removal into mem_cgroup_css_alloc(), which fixes the problem. For better readability, it adds a generic helper which is used in mem_cgroup_alloc() and mem_cgroup_id_put_many() as well. Link: http://lkml.kernel.org/r/152354470916.22460.14397070748001974638.stgit@localhost.localdomain Fixes 73f576c04b94 ("mm: memcontrol: fix cgroup creation failure after many small jobs") Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Acked-by: Vladimir Davydov <vdavydov.dev@gmail.com> Cc: Michal Hocko <mhocko@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions