On Fri, Oct 28, 2022 at 7:26 AM Grant Seltzer Richman <grantseltzer@xxxxxxxxx> wrote: > > It appears that while using libbpf 1.0.1 on a 5.10 kernel, libbpf is > not properly recognizing a lack of support for memcg-based memory > accounting. This is happening in Google's default Kubernetes > environment (GKE). The error message we receive is: Yes, unfortunately the way the switch to memcg accounting is implemented makes it hard to detect it easily. So libbpf is detecting another feature that went together with memcg switch (see probe_memcg_account()). So it's kind of known, though unfortunate, state of the things. Do you have some good ideas on how to implement this better? And yes, the ability to bump memory limits manually is sort of an intended work-around. > > ``` > libbpf: map 'sys_32_to_64_map': failed to create: operation not permitted(-1) > libbpf: permission error while running as root; try raising 'ulimit > -l'? current value: 64.0 KiB > libbpf: failed to load object 'embedded-core' > ``` > > We were able to fix this issue by manually bumping the memory rlimit, > leading to the conclusion that the detection of memcg-based memory is > not functioning properly, and therefore libbpf is not handling this > manual bump as advertised. > > Environment: > > ``` > Linux ubuntu 5.10.123+ #1 SMP Sat Jul 9 14:51:14 UTC 2022 x86_64 > x86_64 x86_64 GNU/Linux > ``` > > Thanks so much, > Grant Seltzer