bpf.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Borkmann <daniel@iogearbox.net>
To: Roman Gushchin <guro@fb.com>,
	Alexei Starovoitov <alexei.starovoitov@gmail.com>
Cc: bpf <bpf@vger.kernel.org>, Alexei Starovoitov <ast@kernel.org>,
	Network Development <netdev@vger.kernel.org>,
	Andrii Nakryiko <andrii@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-mm <linux-mm@kvack.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Kernel Team <kernel-team@fb.com>
Subject: Re: [PATCH bpf-next v9 00/34] bpf: switch to memcg-based memory accounting
Date: Sat, 5 Dec 2020 01:37:14 +0100	[thread overview]
Message-ID: <6abdd146-c584-9c66-261d-d7d39ff3f499@iogearbox.net> (raw)
In-Reply-To: <20201203032645.GB1568874@carbon.DHCP.thefacebook.com>

On 12/3/20 4:26 AM, Roman Gushchin wrote:
> On Wed, Dec 02, 2020 at 06:54:46PM -0800, Alexei Starovoitov wrote:
>> On Tue, Dec 1, 2020 at 1:59 PM Roman Gushchin <guro@fb.com> wrote:
>>>
>>> 5) Cryptic -EPERM is returned on exceeding the limit. Libbpf even had
>>>     a function to "explain" this case for users.
>> ...
>>> v9:
>>>    - always charge the saved memory cgroup, by Daniel, Toke and Alexei
>>>    - added bpf_map_kzalloc()
>>>    - rebase and minor fixes
>>
>> This looks great. Applied.
> 
> Thanks!
> 
>> Please follow up with a change to libbpf's pr_perm_msg().
>> That helpful warning should stay for old kernels, but it would be
>> misleading for new kernels.
>> libbpf probably needs a feature check to make this warning conditional.
> 
> I think we've discussed it several months ago and at that time we didn't
> find a good way to check this feature. I'll think again, but if somebody
> has any ideas here, I'll appreciate a lot.

Hm, bit tricky, agree .. given we only throw the warning in pr_perm_msg() for
non-root and thus probing options are also limited, otherwise just probing for
a helper that was added in this same cycle would have been good enough as a
simple heuristic. I wonder if it would make sense to add some hint inside the
bpf_{prog,map}_show_fdinfo() to indicate that accounting with memcg is enabled
for the prog/map one way or another? Not just for the sake of pr_perm_msg(), but
in general for apps to stop messing with rlimit at this point. Maybe also bpftool
feature probe could be extended to indicate that as well (e.g. the json output
can be fed into Go natively).

  reply	other threads:[~2020-12-05  0:38 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-01 21:58 [PATCH bpf-next v9 00/34] bpf: switch to memcg-based memory accounting Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 01/34] mm: memcontrol: use helpers to read page's memcg data Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 02/34] mm: memcontrol/slab: use helpers to access slab page's memcg_data Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 03/34] mm: introduce page memcg flags Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 04/34] mm: convert page kmemcg type to a page memcg flag Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 05/34] bpf: memcg-based memory accounting for bpf progs Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 06/34] bpf: prepare for memcg-based memory accounting for bpf maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 07/34] bpf: " Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 08/34] bpf: refine memcg-based memory accounting for arraymap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 09/34] bpf: refine memcg-based memory accounting for cpumap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 10/34] bpf: memcg-based memory accounting for cgroup storage maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 11/34] bpf: refine memcg-based memory accounting for devmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 12/34] bpf: refine memcg-based memory accounting for hashtab maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 13/34] bpf: memcg-based memory accounting for lpm_trie maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 14/34] bpf: memcg-based memory accounting for bpf ringbuffer Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 15/34] bpf: memcg-based memory accounting for bpf local storage maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 16/34] bpf: refine memcg-based memory accounting for sockmap and sockhash maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 17/34] bpf: refine memcg-based memory accounting for xskmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 18/34] bpf: eliminate rlimit-based memory accounting for arraymap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 19/34] bpf: eliminate rlimit-based memory accounting for bpf_struct_ops maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 20/34] bpf: eliminate rlimit-based memory accounting for cpumap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 21/34] bpf: eliminate rlimit-based memory accounting for cgroup storage maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 22/34] bpf: eliminate rlimit-based memory accounting for devmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 23/34] bpf: eliminate rlimit-based memory accounting for hashtab maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 24/34] bpf: eliminate rlimit-based memory accounting for lpm_trie maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 25/34] bpf: eliminate rlimit-based memory accounting for queue_stack_maps maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 26/34] bpf: eliminate rlimit-based memory accounting for reuseport_array maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 27/34] bpf: eliminate rlimit-based memory accounting for bpf ringbuffer Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 28/34] bpf: eliminate rlimit-based memory accounting for sockmap and sockhash maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 29/34] bpf: eliminate rlimit-based memory accounting for stackmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 30/34] bpf: eliminate rlimit-based memory accounting for xskmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 31/34] bpf: eliminate rlimit-based memory accounting for bpf local storage maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 32/34] bpf: eliminate rlimit-based memory accounting infra for bpf maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 33/34] bpf: eliminate rlimit-based memory accounting for bpf progs Roman Gushchin
2020-12-01 21:59 ` [PATCH bpf-next v9 34/34] bpf: samples: do not touch RLIMIT_MEMLOCK Roman Gushchin
2020-12-03  2:50 ` [PATCH bpf-next v9 00/34] bpf: switch to memcg-based memory accounting patchwork-bot+netdevbpf
2020-12-03  2:54 ` Alexei Starovoitov
2020-12-03  3:26   ` Roman Gushchin
2020-12-05  0:37     ` Daniel Borkmann [this message]
2020-12-08  2:53       ` Andrii Nakryiko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6abdd146-c584-9c66-261d-d7d39ff3f499@iogearbox.net \
    --to=daniel@iogearbox.net \
    --cc=akpm@linux-foundation.org \
    --cc=alexei.starovoitov@gmail.com \
    --cc=andrii@kernel.org \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=guro@fb.com \
    --cc=kernel-team@fb.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).