Comments (11)
I also need to disable my https://build.opensuse.org/package/show/home:alvistack/containers-crun-1.14, and rolling back all of my Kubernetes nodes on Ubuntu 20.04/22.04 with crun 1.13.
If bpf related should due to 9306457
If apparmor related should due to 5078ce6
from crun.
I am not able to reproduce the issue (I've not tried to configure Docker), could you try if the following patch solves the problem for you?
diff --git a/src/libcrun/ebpf.c b/src/libcrun/ebpf.c
index 5534d47..cb0f8f2 100644
--- a/src/libcrun/ebpf.c
+++ b/src/libcrun/ebpf.c
@@ -483,12 +483,15 @@ libcrun_ebpf_load (struct bpf_program *program, int dirfd, const char *pin, libc
fd = bpf (BPF_PROG_LOAD, &attr, sizeof (attr));
if (fd < 0)
{
- const size_t log_size = 8192;
- cleanup_free char *log = xmalloc (log_size);
-
/* Prior to Linux 5.11, eBPF programs were accounted to the memlock
prlimit. Attempt to bump the limit, if possible. */
bump_memlock ();
+ fd = bpf (BPF_PROG_LOAD, &attr, sizeof (attr));
+ }
+ if (fd < 0)
+ {
+ const size_t log_size = 8192;
+ cleanup_free char *log = xmalloc (log_size);
log[0] = '\0';
attr.log_level = 1;
As a workaround, you can try forcing the memory lock ulimit to 4kb, if you are using systemd you can force LimitMEMLOCK=4096
or higher
from crun.
Ciao Giuseppe, e grazie
Actually, in all vms affected by this issue the ulimit is set to unlimited, so I dont' think setting to 4kb can help.
I'll try to rebuild crun with your diff to see if it works.
from crun.
Actually, in all vms affected by this issue the ulimit is set to unlimited, so I dont' think setting to 4kb can help.
could you please check what is the limit for the Docker (or containerd) daemon?
You can grab it from /proc/$(PID DOCKER DAEMON)/limits
from crun.
Sure!
root@norinf01:~# ps aux | grep dockerd
root 26033 2.3 0.8 4653564 136040 ? Ssl Jan25 22:26 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
root 473511 0.0 0.0 6240 700 pts/0 S+ 15:25 0:00 grep dockerd
root@norinf01:~# cat /proc/26033/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size unlimited unlimited bytes
Max resident set unlimited unlimited bytes
Max processes unlimited unlimited processes
Max open files 524288 524288 files
Max locked memory 65536 65536 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 63848 63848 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us
from crun.
thanks, the locked memory ulimit seems fine. I can open a PR with my patch, if you've a possibility to try it out
from crun.
I've configured Docker on Debian 11 with crun, but I am not able to reproduce the issue. What kernel version are you using? How have you created the container?
from crun.
@giuseppe just a guess, could it be related to cgroupns which I set to host? It's the only customization which I have done on docker
Also, I wrote you an email if you wish to test something together, just a proposal ;)
from crun.
that should not really matter, but you never know...
Thanks for the proposal, yes that would help, I'd like to validate my patch in a configuration where we can see the regression
from crun.
Hi @giuseppe, I tried to apply the diff you suggested, and the problem seems to have disappeared
Thanks a lot! Marco
from crun.
thanks for onfirming it! Opened a PR: #1405
from crun.
Related Issues (20)
- crun: bpf create ``: Invalid argument HOT 2
- #21520 crun not working with pterodactyl wings HOT 6
- Read-only file volumes fail on fedora 39 with docker HOT 5
- How to verify downloaded binaries? HOT 2
- Release v1.14.4 HOT 2
- unrecognized option '--keep' when using crun for building docker images HOT 2
- Example Config HOT 1
- Crun not starting in amd64/x86_64 docker container on Apple Silicon HOT 3
- crun 1.14.4: `Error: OCI runtime error: crun: Error relocating /usr/bin/crun: statx: symbol not found` HOT 3
- BPF create error when use debian bullseye kernel >= 5.10.0-26-amd64 HOT 1
- Discrepancy between crun and runc when disallowing access by default to devices with cgroups v1 HOT 5
- Does not ignore SIGWINCH if no terminal is allocated
- container create failed: sd-bus call: Cannot set property CPUQuotaPeriodUSec, or unknown propert HOT 8
- Compilation error with clang++ 17 HOT 3
- Missing libsystemd headers on Alpine Linux v3.19 HOT 2
- Version 1.14.5 HOT 1
- [packit] Propose downstream failed for release 1.15 HOT 2
- Container creation fails with read-only bind mount HOT 3
- what is the purpose and future of crun-wasm - asking for (a friend) Debian packaging :) ? HOT 5
- Different CRUN/RUNC cgroup hierarchy HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from crun.