Re: [PATCH 2/2] Explicitly call tcp creation and init from memcontrol.c
From: David Miller <davem@davemloft.net>
Date: 2011-12-15 17:02:40
Also in:
cgroups, lkml
From: David Miller <davem@davemloft.net>
Date: 2011-12-15 17:02:40
Also in:
cgroups, lkml
From: Glauber Costa <redacted> Date: Thu, 15 Dec 2011 13:34:32 +0400
Walking the proto_list holds a read_lock, which prevents us from doing allocations. Splitting the tcp create function into create + init is good, but it is not enough since create_files will do allocations as well (dentry ones, mostly). Since this does not involve any protocol state, I propose we call the tcp functions explicitly from memcontrol.c With this, we lose by now the ability of doing cgroup memcontrol for protocols that are loaded as modules. But at least the ones I have in mind won't really need it (tcp_ipv6 being the only one, but it uses the same data structures as tcp_ipv4). So I believe this to be the simpler solution to this problem. Signed-off-by: Glauber Costa <redacted>
This is an unnecessary limitation, please fix this properly otherwise DCCP, SCTP, etc. won't be supportable with this stuff.