Re: [PATCH] mm: memcontrol: localize mem_cgroup_sockets_enabled() check
From: Johannes Weiner <hannes@cmpxchg.org>
Date: 2020-10-12 14:00:35
Also in:
cgroups, linux-mm, lkml
From: Johannes Weiner <hannes@cmpxchg.org>
Date: 2020-10-12 14:00:35
Also in:
cgroups, linux-mm, lkml
On Sat, Oct 10, 2020 at 06:45:21PM +0800, Muchun Song wrote:
Move the mem_cgroup_sockets_enabled() checks into memcg socket charge or uncharge functions, so the users don't have to explicitly check that condition. This is purely code cleanup patch without any functional change. But move the sk_memcg member of the sock structure to the CONFIG_MEMCG scope. Signed-off-by: Muchun Song <redacted> --- include/linux/memcontrol.h | 78 ++++++++++++++++++++++++++------- include/net/sock.h | 5 ++- include/net/tcp.h | 3 +- mm/memcontrol.c | 43 +++++++++++++----- net/core/sock.c | 15 +++---- net/ipv4/inet_connection_sock.c | 6 +-- net/ipv4/tcp_output.c | 3 +- 7 files changed, 111 insertions(+), 42 deletions(-)
Hm, this is almost 3 times as much code. The sk_memcg saving on !CONFIG_MEMCG is somewhat nice, but it's not clear how many users would benefit here. And it adds ifdefs in code. Also memcg code now has to know about struct sock. I'm not quite sure that this is an overall improvement.