Closed xibz closed 5 years ago
I'm not sure if Docker has anything to do with it. I'm getting the same message and exit code on an m5.metal running Debian Stretch with musl (from Debian) and rust (from rustup).
The disallowed call appears to be an accept4
on the socket file (fd 12, see the call to socket() = 12
and bind(12, {sa_family=AF_UNIX, sun_path="./firecracker.sock"}, 21)
earlier in the strace output).
This looks to be a change from Rust 1.32 to Rust 1.33. Building with Rust 1.32 appears to work.
@samuelkarp - Updating to 1.32 worked for me as well. I'll go ahead and update the title to better reflect this being a Rust v1.33.0 issue.
We haven't updated yet to Rust 1.33.0. The supported Rust version is the one from the fcuvm
container(1.32.0). We will fix the seccomp filters once we update to 1.33.0. Do you have any constraints for which you must build Firecracker with 1.33.0?
@andreeaflorescu - Naw, I don't, as in where I need to build with 1.33.0
. rustup
just automatically installs 1.33.0
, which led to some confusion to why things were suddenly failing.
So I am running the SDK for Firecracker in Docker and noticed that Firecracker exits with 148 and with the error message
Shutting down VM after intercepting a bad syscall (288)
. Which is confusing to why that is occurring. The tests work fine without running in Docker.The simplest way to reproduce this would be to checkout my
docker
branch from my repo and runningmake sandbox-test-fc
.Here are the logs from the test