Re: [PATCH RESEND 8/8] af_unix: charge buffers to kmemcg
From: Eric Dumazet
Date: Tue May 24 2016 - 09:02:21 EST
On Tue, 2016-05-24 at 11:49 +0300, Vladimir Davydov wrote:
> Unix sockets can consume a significant amount of system memory, hence
> they should be accounted to kmemcg.
>
> Since unix socket buffers are always allocated from process context,
> all we need to do to charge them to kmemcg is set __GFP_ACCOUNT in
> sock->sk_allocation mask.
I have two questions :
1) What happens when a buffer, allocated from socket <A> lands in a
different socket <B>, maybe owned by another user/process.
Who owns it now, in term of kmemcg accounting ?
2) Has performance impact been evaluated ?
Thanks.