-
Notifications
You must be signed in to change notification settings - Fork 2.2k
feat: Add Seqpacket support #5595
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
base: main
Are you sure you want to change the base?
Conversation
9cb7f64 to
4988a5e
Compare
|
@JamesC1305 checking the failures, will fix. they seem to be related to style checking and a missing field on a python functional test |
|
Hi @aerosouund, thank you for your contribution. Yes, the failures look to be related to your changes. To start debugging, you can look at the logs from the buildkite run , and perhaps try running the integration tests locally using |
c9a695b to
313cdc4
Compare
7c831d5 to
beea795
Compare
|
@JamesC1305 This is the test that was failing in the pipeline as per my memory. I cannot access the original failure logs now because it shows the workflow is pending. if there's a way for me to get the old run logs to verify if another test was failing please point me to it |
|
Hi @aerosouund, I reran the tests, and it looks like they're still failing: https://buildkite.com/firecracker/firecracker-pr/builds/15547#_. In general, if you want to look at previous runs, you can click on the branch name (e.g. aerosouund:vsock in this case) under the run title. That will show you all previous runs for this branch. |
7d1402d to
1c63c1f
Compare
Modify the multiplexer and vsock backend to be able to handle vsock seqpacket connections based on the passed config parameter. This parameter needs to also be passed to the API endpoint during vsock operations. The implementation's idea is making VsockConnection use an enum called ConnBackend as its backend. This enum can be a UnixStream or a SeqpacketConn Signed-off-by: aerosouund <[email protected]>
Changes
There's currently no support for seqpacket based vsock connections in firecracker.
This PR adds it by creating an enum
ConnBackendthat implementsVsockConnectionBackendand make its variants a unix stream or a seqpacket connection.To handle seqpacket, this leverages the uds crate for initiating seqpacket connections and them extracts the file descriptor and puts it in a wrapper type to access it in a similar fashion as the unix stream.
It adds
vsock_typeas an api parameter to the vsock typeReason
Fixes: #4822
License Acceptance
By submitting this pull request, I confirm that my contribution is made under
the terms of the Apache 2.0 license. For more information on following Developer
Certificate of Origin and signing off your commits, please check
CONTRIBUTING.md.PR Checklist
tools/devtool checkbuild --allto verify that the PR passesbuild checks on all supported architectures.
tools/devtool checkstyleto verify that the PR passes theautomated style checks.
how they are solving the problem in a clear and encompassing way.
in the PR.
CHANGELOG.md.Runbook for Firecracker API changes.
integration tests.
TODO.rust-vmm.