versions: Update qemu-virtiofs to 5.0 and cloud-hypervisor 0.9#2840
Conversation
|
Thank you for raising your pull request. Please note that the main development of Kata Containers has moved to the 2.0-dev branch of https://github.com/kata-containers/kata-containers repository. The kata-containers/runtime repository is kept for 1.x release maintenance. Please check twice if your change should go to the 2.0-dev branch directly. If it is strongly required for adding the change to Kata Containers 1.x releases, please ping @kata-containers/runtime to assign a dedicated developer to be responsible for porting the change to 2.0-dev branch. Thanks! |
|
/test |
Codecov Report
@@ Coverage Diff @@
## master #2840 +/- ##
==========================================
+ Coverage 51.19% 51.22% +0.03%
==========================================
Files 118 118
Lines 17392 17405 +13
==========================================
+ Hits 8903 8916 +13
Misses 7408 7408
Partials 1081 1081 |
|
/test |
likebreath
left a comment
There was a problem hiding this comment.
I am curious what is the different bwt qemu5.0-virtiofs-dax and kata-v5.6-april-09-2020? I guess that is whether they support DAX or not?
Also, I assume the PR is used to validate how the experimental DAX support from virtio-fs works in Kata, right?
|
/test-virtiofs |
|
hey @likebreath,
|
That sounds about right for the qemu branch; I documented what's in that branch in: |
experimental QEMU will be updated to qemu 5.0, now CI fails with: ``` failed to set MSR 0x48b to 0x1582e00000000 qemu-virtiofs-system-x86_64: /root/qemu-virtiofs/target/i386/kvm.c:2695: kvm_buf_set_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed.: unknown. ``` Depends-on: github.com/kata-containers/packaging#1097 Depends-on: github.com/kata-containers/runtime#2840 Fixes: kata-containers#2736 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
|
/test |
Update build scripts for qemu-virtiofs Depends-on: github.com/kata-containers/runtime#2840 Depends-on: github.com/kata-containers/tests#2737 Fixes: github.com/kata-containers/runtime#2848 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
|
/test-clh |
|
/test-clh |
|
/test-clh |
|
I see some failures not related with virtiofsd \cc:
|
|
/test-clh-docker |
|
Hi @jcvenegas, thanks for summarizing the issues:
|
Sure let me try that test locally |
|
My local env has all test passing |
|
/test-clh-docker |
|
/test-clh |
|
@sboeuf I manage to reproduce the CI error, I think is a race condition. Seems that happen after add block devices this are the traces before it fails.
Here a partial log of clh: https://dpaste.com/E7RWJML22 |
|
/test-clh-podman |
|
/test-clh-metrics |
|
/test-metrics-virtiofs |
c8f7526 to
ebcdf50
Compare
Update to qemu 5.0.x with support for virtiofs + dax. Depends-on: github.com/kata-containers/packaging#1097 Depends-on: github.com/kata-containers/tests#2737 Fixes: kata-containers#2848 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
Highlights for cloud-hypervisor version 0.9.0 include:
virtiofs updates to new dax implementation based in qemu 5.0
Fixed random issues caused due to seccomp filters
io_uring Based Block Device Support
If the io_uring feature is enabled and the host kernel supports it then io_uring will be used for block devices. This results a very significant performance improvement.
Block and Network Device Statistics
Statistics for activity of the virtio network and block devices is now exposed through a new vm.counters HTTP API entry point. These take the form of simple counters which can be used to observe the activity of the VM.
HTTP API Responses
The HTTP API for adding devices now responds with the name that was assigned to the device as well the PCI BDF.
CPU Topology
A topology parameter has been added to --cpus which allows the configuration of the guest CPU topology allowing the user to specify the numbers of sockets, packages per socket, cores per package and threads per core.
Release Build Optimization
Our release build is now built with LTO (Link Time Optimization) which results in a ~20% reduction in the binary size.
Hypervisor Abstraction
A new abstraction has been introduced, in the form of a hypervisor crate so as to enable the support of additional hypervisors beyond KVM.
Snapshot/Restore Improvements
Multiple improvements have been made to the VM snapshot/restore support that was added in the last release. This includes persisting more vCPU state and in particular preserving the guest paravirtualized clock in order to avoid vCPU hangs inside the guest when running with multiple vCPUs.
Virtio Memory Ballooning Support
A virtio-balloon device has been added, controlled through the resize control, which allows the reclamation of host memory by resizing a memory balloon inside the guest.
Enhancements to ARM64 Support
The ARM64 support introduced in the last release has been further enhanced with support for using PCI for exposing devices into the guest as well as multiple bug fixes. It also now supports using an initramfs when booting.
Intel SGX Support
The guest can now use Intel SGX if the host supports it. Details can be found in the dedicated SGX documentation.
Seccomp Sandbox Improvements
The most frequently used virtio devices are now isolated with their own seccomp filters. It is also now possible to pass --seccomp=log which result in the logging of requests that would have otherwise been denied to further aid development.
Notable Bug Fixes
Our virtio-vsock implementation has been resynced with the implementation from Firecracker and includes multiple bug fixes.
CPU hotplug has been fixed so that it is now possible to add, remove, and re-add vCPUs (kata-containers#1338)
A workaround is now in place for when KVM reports MSRs available MSRs that are in fact unreadable preventing snapshot/restore from working correctly (kata-containers#1543).
virtio-mmio based devices are now more widely tested (kata-containers#275).
Multiple issues have been fixed with virtio device configuration (kata-containers#1217)
Console input was wrongly consumed by both virtio-console and the serial. (kata-containers#1521)
Fixes: kata-containers#2864
Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
Update api geneated by openapi. Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
API now requires cpu topology. Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
ebcdf50 to
3989786
Compare
|
/test-clh-docker |
|
/test-virtiofs |
Update build scripts for qemu-virtiofs Depends-on: github.com/kata-containers/runtime#2840 Depends-on: github.com/kata-containers/tests#2737 Fixes: github.com/kata-containers/runtime#2848 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
Update build scripts for qemu-virtiofs Depends-on: github.com/kata-containers/runtime#2840 Depends-on: github.com/kata-containers/tests#2737 Fixes: github.com/kata-containers/runtime#2848 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
Update build scripts for qemu-virtiofs. - virtiofs-0.3 patches are not needed - Sync build on how vanilla qemu is built - Apply patches for virtiofsd if any (none today) - Apply patches that are used for the qemu vanilla - Apply patches in order Depends-on: github.com/kata-containers/runtime#2840 Depends-on: github.com/kata-containers/tests#2737 Fixes: github.com/kata-containers/runtime#2848 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
|
/test |
likebreath
left a comment
There was a problem hiding this comment.
LGTM. Thanks, @jcvenegas. Are we ready to merge the PR w/ few CI jobs failing?
|
/test-clh-podman |
|
I was looking at the wrong CI log, and the current failure seems to be a different one (CI log): |
|
/test-clh-metrics |
|
The metrics CI is failing on the error /test-clh-metrics |
|
Merging the PR given the failing CI (e.g. ARM, clh-fedora-31, and sles) have not been passing for a while and are not related to the changes from this PR. |
|
I just noticed that the following dependent PRs are not landed yet. Any blockers to merge them? @jcvenegas @amshinde Depends-on: github.com/kata-containers/packaging#1097 |
Update to qemu 5.0.x with support for virtiofs + dax.
Depends-on: github.com/kata-containers/packaging#1097
Depends-on: github.com/kata-containers/tests#2737
Fixes: #2848
Signed-off-by: Jose Carlos Venegas Munoz jose.carlos.venegas.munoz@intel.com