Re: Re: [PATCH net-next v5 1/3] net-memcg: Fold dependency into memcg pressure cond
From: Abel Wu <hidden>
Date: 2023-06-05 11:52:24
Also in:
cgroups, lkml
On 6/3/23 4:25 AM, Shakeel Butt wrote:
On Fri, Jun 02, 2023 at 04:11:33PM +0800, Abel Wu wrote:quoted
The callers of mem_cgroup_under_socket_pressure() should always make sure that (mem_cgroup_sockets_enabled && sk->sk_memcg) is true. So instead of coding around all the callsites, put the dependencies into mem_cgroup_under_socket_pressure() to avoid redundancy and possibly bugs. This change might also introduce slight function call overhead *iff* the function gets expanded in the future. But for now this change doesn't make binaries different (checked by vimdiff) except the one net/ipv4/tcp_input.o (by scripts/bloat-o-meter), which is probably negligible to performance: add/remove: 0/0 grow/shrink: 1/2 up/down: 5/-5 (0) Function old new delta tcp_grow_window 573 578 +5 tcp_try_rmem_schedule 1083 1081 -2 tcp_check_space 324 321 -3 Total: Before=44647, After=44647, chg +0.00% So folding the dependencies into mem_cgroup_under_socket_pressure() is generally a good thing and provides better readablility.I don't see how it is improving readability. If you have removed the use of mem_cgroup_sockets_enabled completely from the networking then I can understand but this change IMHO will actually decrease the readability because the later readers will have to reason why we are doing this check at some places but not other.
Yes, I agree. I am trying to let networking get rid of this macro entirely, but get stuck on inet_csk_accept().. :(