Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

crun tries to use pidfd on old kernels #530

Closed
mbien opened this issue Oct 27, 2020 · 10 comments
Closed

crun tries to use pidfd on old kernels #530

mbien opened this issue Oct 27, 2020 · 10 comments

Comments

@mbien
Copy link

mbien commented Oct 27, 2020

since I updated crun from 0.14 to 0.15 on debian stable (using podman from testing repo), podman is throwing errors when i stop a container.

example:

podman run --runtime /usr/bin/crun --rm docker.io/library/alpine cat etc/os-release
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.12.1
PRETTY_NAME="Alpine Linux v3.12"
HOME_URL="https://alpinelinux.org/"
BUG_REPORT_URL="https://bugs.alpinelinux.org/"
2020-10-27T18:43:50.000455481Z: open pidfd: Function not implemented
2020-10-27T18:43:50.000535319Z: open pidfd: Function not implemented
ERRO[0000] delete container: error removing container 38618f35f94b82e2c2932280773bbb68bb271a7b2d053da9a71571587dc4b677 from runtime: `/usr/bin/crun delete --force 38618f35f94b82e2c2932280773bbb68bb271a7b2d053da9a71571587dc4b677` failed: exit status 1 
ERRO[0000] Error removing container 38618f35f94b82e2c2932280773bbb68bb271a7b2d053da9a71571587dc4b677: error cleaning up container 38618f35f94b82e2c2932280773bbb68bb271a7b2d053da9a71571587dc4b677: error removing container 38618f35f94b82e2c2932280773bbb68bb271a7b2d053da9a71571587dc4b677 from runtime: `/usr/bin/crun delete --force 38618f35f94b82e2c2932280773bbb68bb271a7b2d053da9a71571587dc4b677` failed: exit status 1 

latest kernel from debian stable:

uname -a
Linux virtualdebian 4.19.0-12-amd64 #1 SMP Debian 4.19.152-1 (2020-10-18) x86_64 GNU/Linux

upgrading the kernel or downgrading crun to 0.14 fixes it. According to the error msg, it looks like crun attempts to use pidfd_open() which is a 5.3+ kernel feature (https://man7.org/linux/man-pages/man2/pidfd_open.2.html).

@giuseppe
Copy link
Member

it is fixed with: #520

Would it be possible for you to verify if the current development version works? If that helps, I can cut a new release

@mbien
Copy link
Author

mbien commented Oct 27, 2020

sure i could test it in a VM. Binaries would be great.

@giuseppe
Copy link
Member

there is a static binary generated in the PR Artifacts: https://github.com/containers/crun/runs/1255158523

@mbien
Copy link
Author

mbien commented Oct 28, 2020

podman run --runtime /home/mbien/crun-linux-amd64 --rm docker.io/library/alpine cat etc/os-release
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.12.1
PRETTY_NAME="Alpine Linux v3.12"
HOME_URL="https://alpinelinux.org/"
BUG_REPORT_URL="https://bugs.alpinelinux.org/"

worked fine

@giuseppe
Copy link
Member

thanks for confirming it!

@mbien
Copy link
Author

mbien commented Oct 30, 2020

@giuseppe any ETA for the next crun release which would include this fix for the regression?

@giuseppe
Copy link
Member

I can cut a release in the next days.

@rhatdan are you fine with merging #527?

@rhatdan
Copy link
Member

rhatdan commented Nov 2, 2020

Merged.

@giuseppe
Copy link
Member

giuseppe commented Nov 3, 2020

@mbien the new release is out: https://github.com/containers/crun/releases/tag/0.15.1

@mbien
Copy link
Author

mbien commented Nov 3, 2020

@giuseppe awesome, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants