firecracker
firecracker copied to clipboard
[virtio-mem] Adding blank device
Changes
This marks the start of adding support for virtio-mem devices in Firecracker, also called Memory Devices.
More details about Memory Devices can be found in Virtual I/O Device Version 1.2, Chapter 5.15.
This PR contains the following:
- new virtio-mem device that is recognised the guest kernel (if the kernel is configured to support
virtio-mem), but offer not backend functionality (it does not provide memory), - a change to
microvm-kernel-x86_64-5.10.configto supportvirtio-mem(to facilitate testing), - a new file
config_vmused to test this device by adding--config-file config_vmto firecracker command, as right now the only way to configure this device is through the config file, no API endpoints are implemented yet
Reason
Adding this Virtio Device aims to improve multi-tenancy by facilitating memory oversubscription.
License Acceptance
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
PR Checklist
- [x] All commits in this PR are signed (
git commit -s). - [ ] If a specific issue led to this PR, this PR closes the issue.
- [x] The description of changes is clear and encompassing.
- [ ] Any required documentation changes (code and docs) are included in this PR.
- [x] New
unsafecode is documented. - [x] API changes follow the Runbook for Firecracker API changes.
- [ ] User-facing changes are mentioned in
CHANGELOG.md. - [x] All added/changed functionality is tested.
- [ ] This functionality can be added in
rust-vmm.