Re: [PATCH bpf-next v2 2/5] mptcp: attach subflow socket to parent cgroup

From: Song Liu
Date: Mon Sep 14 2020 - 16:52:40 EST


On Fri, Sep 11, 2020 at 9:43 AM Nicolas Rybowski
<nicolas.rybowski@xxxxxxxxxxxx> wrote:
>
> It has been observed that the kernel sockets created for the subflows
> (except the first one) are not in the same cgroup as their parents.
> That's because the additional subflows are created by kernel workers.
>
> This is a problem with eBPF programs attached to the parent's
> cgroup won't be executed for the children. But also with any other features
> of CGroup linked to a sk.
>
> This patch fixes this behaviour.
>
> As the subflow sockets are created by the kernel, we can't use
> 'mem_cgroup_sk_alloc' because of the current context being the one of the
> kworker. This is why we have to do low level memcg manipulation, if
> required.
>
> Suggested-by: Matthieu Baerts <matthieu.baerts@xxxxxxxxxxxx>
> Suggested-by: Paolo Abeni <pabeni@xxxxxxxxxx>
> Acked-by: Matthieu Baerts <matthieu.baerts@xxxxxxxxxxxx>
> Reviewed-by: Mat Martineau <mathew.j.martineau@xxxxxxxxxxxxxxx>
> Signed-off-by: Nicolas Rybowski <nicolas.rybowski@xxxxxxxxxxxx>

Acked-by: Song Liu <songliubraving@xxxxxx>

[...]