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
virtio core support #1
Conversation
8f1b5c1
to
40913d1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
First pass.
Please also add tests to check the musl build. In Firecracker we build against musl.
34b7af2
to
ffc60dc
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with a few nits and comments here and there.
Is there any way to also test the error cases? We can do that in a future PR f it is possible.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The remaining comments I have left only affect tests, so it's okay to do that later.
Since I don't have write access, my approval doesn't count for merging. |
@bonzini added you as collaborator. |
This is based on Firecracker v0.16 and ported to the rust-vmm memory model. It implements the virtio virtqueue specification for virtio devices. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
In order to simplify the iter and add_used methods. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This is based on crosvm 107edb3e, with removal for all PCI specific bits and the GuestMemory generics dependency addition. As it depends on the EventFd API, this introduces a vmm-sys-util dependency. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Add the Apache-2.0 and BSD-3-Clause licenses for this crate, and dual license Apache-2.0 OR/AND BSD-3-Clause. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Provide a crate description, a brief API documentation and some testing instructions. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
@aghecenco I addressed most of your comments, PTAL. |
And update the corresponding README sections. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
See https://buildkite.com/docs/pipelines/defining-steps Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
The linker can't find the floating point builtins. Added target-feature=+crt-static and link-arg=-lgcc as a temporary workaround. This seems to be the accepted fix in the Rust community: rust-lang/compiler-builtins#201 Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Summary of issues to create after this is merged:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All review comments were addressed.
This PR brings the initial support for virtio devices:
Device
trait based on crosvm 107edb3e