Attendees
Mike
Mathieu
Alex
Jens
Mat (Arm)
Mark
Pratik (Qualcomm)
Peter
Arnd
Don
Jean-Phillip
Illias
Dan Mila (Windriver)
Bill F
Catalin (NXP)
Bill M
Loic (ST)
Robin (Arm)
Srivatsa (Qualcomm)
Arnaund Pouliquen (ST)
Souvik (Qualcomm)
Azzedine (Qualcomm)
Francois
Randy
Get a view of the engineering support available to work on Stratos.
SOAFEE (if time)
Discussion items
Review
Action items
Upstreaming attempts stalled at v7, bad API choice for ioctl (too low level), virtio piggy-backs on the kernel RPMB interface
Can we find the HW to test/rev the real RPMB interface?
Matt Spencer
/ Robin Randhawa : RustVMM discussion
rust-vmm presentation to Linaro 040221-01.pdf
Discussion Points
Rust VMM
Aarch64 is now Tier 1 for Rust (1.49.0, as per Dec 2020)
Memory safety is the headline feature but:
well documented, clear rules - enforced by compiler
excellent tooling for deps and distribution
rich standard library
strong approach to modularity, component re-use
Used in production at Google, MS, Intel, Arm
Fuchsia device model in Rust
Parts of Win10 kernel
rust-vmm - not a hypervisor!
collection of crates (libs) + hypervisor = build a VMM
language agnostic! (although in practice the current ones use Rust all the way through)
strong FFI interface (to allow Rust modules to drop into other languages supporting the C FFI)
primarily supports KVM (at the moment)
CrosVM, Firecracker , Intel Cloud Hypervisor (migration support)
rust-vmm project
3 stages of a crate (requirements, implementation, production ready on crates.io)
rust-vmm + xen
project to replace dom0 tooling with rust components
early project
rust as bare metal
-M profile well supported
-A coming along
tooling questions
just works (a lot comes from LLVM support)
rust-analyser - provides LSP and IDE integration
what about profiling? cargo-flame?
some friction between distro/rust community approach to releases
rust/kernel integration
is ongoing work to allow kernel to have rust device drivers
expected to need some language updates
6 week release cycle clashes with Kernel's approach to tooling
probably use rustgcc (not the same as the mainline compiler?)
Action items