Posts for: #cloud-hypervisor

Cloud Hypervisor Releases Version v36.0 of Open Source Virtual Machine Monitor

Cloud Hypervisor, an open source Virtual Machine Monitor (VMM), has announced the release of version v36.0. This VMM runs on top of the KVM hypervisor and the Microsoft Hypervisor (MSHV) and is designed to run modern cloud workloads on common hardware architectures.

The project focuses on enabling customers to run cloud workloads inside a Cloud Service Provider, utilizing modern operating systems with paravirtualized devices (such as virtio) for efficient I/O, 64-bit CPUs, and no requirement for legacy devices.

Cloud Hypervisor is implemented in Rust and is based on the Rust VMM crates. The v36.0 release includes several user-visible changes and improvements:

Command Line Changes

The project has switched back to using the clap crate to create the command line interface, as the previous argh crate was not being actively maintained. This switch has resulted in syntax changes, such as using --option=value instead of --option value.

Enabled Features Reported via API Endpoint and CLI

Users can now query the enabled features of the running Cloud Hypervisor instance through the API endpoint (/vmm.ping) and the CLI (--version -v).

NUMA Support for PCI Segments

The --numa command has been updated with a new option pci_segment=, allowing users to define the relationship between PCI segments and NUMA nodes. Examples of usage can be found in the memory documentation.

CPU Topology Support on AMD Platforms

The CPU topology on x86_64 platforms now supports multiple vendors, providing improved flexibility and compatibility.

Unix Socket Backend for Serial Port

The --serial command has been enhanced with a new option socket=, enabling users to access the serial port using a Unix socket.

AIO Backend for Block Devices

An AIO (Asynchronous Input/Output) backend has been added for virtio-block devices, improving block device performance when the io_uring feature is not supported by the host operating system.

Documentation Improvements

The release includes various documentation improvements, including a new document for collecting coverage data and various typo fixes.

Notable Bug Fixes

Several notable bug fixes have been included in this release, including a fix for a deadlock issue when TDX (Intel Total Memory Encryption Extension) is enabled, a correction of the default value for vCPU topology on AArch64, and ensuring that AMX (Advanced Matrix Extensions) feature bits are only advertised to guests when the AMX CPU feature is enabled.

Cloud Hypervisor Releases Version v35.0 of Open Source Virtual Machine Monitor

Cloud Hypervisor, an open-source Virtual Machine Monitor (VMM), has announced the release of version v35.0. This VMM runs on top of the KVM hypervisor and the Microsoft Hypervisor (MSHV). The primary focus of the Cloud Hypervisor project is to enable the running of modern cloud workloads on specific, common hardware architectures. Cloud workloads, in this context, refer to those run by customers within a Cloud Service Provider. This includes modern operating systems with most I/O handled by paravirtualized devices (such as virtio), no requirement for legacy devices, and 64-bit CPUs.

Implemented in Rust and based on the Rust VMM crates, Cloud Hypervisor offers several user-visible changes and improvements in this release. Some of the notable updates include:

  • virtio-vsock Support for Linux Guest Kernel v6.3+: With the kernel version 6.3 and newer, a vsock packet can now be included in a single descriptor, rather than being split over two descriptors. The virtio-vsock implementation in Cloud Hypervisor now supports both situations.

  • User Specified Serial Number for virtio-block: A new option called serial has been added to the --block command, allowing users to specify a serial number for block devices that will be visible to the guest.

  • vCPU TSC Frequency Included in Migration State: This enhancement ensures successful migration between hosts with different TSC frequencies when the guest is running with TSC as the source of timekeeping.

In addition to these improvements, the release also includes several bug fixes, addressing issues like concurrent CPU resizing, handling of APIC EOI messages for MSHV, memory offset calculations, spell check, block device alignment, and latency counter for block devices.

The release of version v35.0 of Cloud Hypervisor is the result of contributions from various contributors, including Alyssa Ross, Anatol Belski, Bo Chen, Christian Blichmann, Jianyong Wu, Jinank Jain, Julian Stecklina, Omer Faruk Bayram, Philipp Schuster, Rob Bradford, Ruslan Mstoi, Thomas Barrett, Wei Liu, Yi Wang, and zhongbingnan.

For more details about the release and the Cloud Hypervisor project, visit the Cloud Hypervisor v35.0 release page.