Skip to content
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

Upgrade to Cloud Hypervisor v39.0 #9574

Open
likebreath opened this issue Apr 30, 2024 · 0 comments
Open

Upgrade to Cloud Hypervisor v39.0 #9574

likebreath opened this issue Apr 30, 2024 · 0 comments
Labels
enhancement Improvement to an existing feature needs-review Needs to be assessed by the team.

Comments

@likebreath
Copy link
Contributor

This release has been tracked in our roadmap project as iteration
v38.0. The following user visible changes have been made:

Group Rate Limiter on Block Devices

Users now can throttle a group of block devices with the new
--rate-limiter-group option. Details can be found from the I/O
Throttling documentation

CPU Pinning Support for Block Device Worker Thread

Users now have the option to pin virt-queue threads for block devices
to specific host cpus.

Optimized Boot Time with Parallel Memory Prefault

The boot time with prefault option enabled is optimized via parallel
memory prefault.

New 'debug-console' Device

A 'debug-console' device is added to provide a user-configurable debug
port for logging guest information. Details can be found from the Debug
IO Ports documentation
.

Improved VFIO Device Support

All non-emulated MMIO regions of VFIO devices are now mapped to the VFIO
container, allowing PCIe P2P between all VFIO devices on the same
VM. This is required for a wide variety of multi-GPU workloads involving
GPUDirect P2P (DMA between two GPUs), GPUDirect RDMA (DMA between a GPU
and an IB device).

Extended CPU Affinity Support

Users now can set the vcpu affinity to a host CPU with index larger
than 255.

Notable Bug Fixes

  • Enable HTT flag to avoid crashing cpu topology enumeration software
    such as hwloc in the guest
  • Fix several security advisories from dependencies
  • Handle non-power-of-two CPU topology properly
  • Various bug fixes around virtio-vsock
  • Enable nested virtualization on AMD if supported
  • Align VFIO devices PCI BARs naturally

=====================================================

This release has been tracked in our roadmap project as iteration
v39.0. The following user visible changes have been made:

Variable Sizing of PCI Apertures for Segments

It is now possible to use --pci-segment to adjust the aperture size that
devices 32-bit and 64-bit PCI device BARs will be allocated from. Previously
the address space was equally distributed across all the segments which may
leave insufficient space for devices that require a large 32-bit space. With
this change the weighting per segment can be adjusted.

Direct Booting with bzImages

Support for directly booting Linux from bzImages has been added.

Support for NVIDIA GPUDirect P2P Support

The x_nv_gpudirect_clique option was added to --device to allow the
configuration of device P2P support with NVIDIA GPUs.

Guest NMI Injection Support

A new API endpoint and ch-remote option added for injecting an NMI into the
guest.

Notable Bug Fixes

  • Workaround for kernel bug affecting guest IRQ masking on AMD

  • Correctly cleanup sigwinch_listener process

  • Graceful shutdown of HTTP API thread

  • Fix queue_affinity option in OpenAPI metadata

  • Fix documentation to indicate only stream mode is supported by virtio-vsock

  • Fix virtio-fs tag validation

  • Add missing pvpanic device to OpenAPI metadata

  • Fixes for nested virtualization with VFIO devices

  • Fix for backing file for virtio-mem regions with snapshot/restore

  • Explicitly mark FDs used for network devices as invalid across
    snapshot/restore

  • Improve event-monitor events around reboot

  • Fix potential deadlock around paused devices during live migration

  • Fix panic when running ch-remote with no subcommand

  • Fix hotplug of virtio devices after snapshot/restore and live migration

@likebreath likebreath added enhancement Improvement to an existing feature needs-review Needs to be assessed by the team. labels Apr 30, 2024
likebreath added a commit to likebreath/kata-containers that referenced this issue Apr 30, 2024
This patch upgrades Cloud Hypervisor to v39.0 from v36.0, which contains
fixes of several security advisories from dependencies. Details can be
found from kata-containers#9574.

Fixes: kata-containers#8694, kata-containers#9574

Signed-off-by: Bo Chen <chen.bo@intel.com>
likebreath added a commit to likebreath/kata-containers that referenced this issue Apr 30, 2024
This patch re-generates the client code for Cloud Hypervisor v39.0.
Note: The client code of cloud-hypervisor's OpenAPI is automatically
generated by openapi-generator.

Fixes: kata-containers#8694, kata-containers#9574

Signed-off-by: Bo Chen <chen.bo@intel.com>
@katacontainersbot katacontainersbot moved this from To do to In progress in Issue backlog Apr 30, 2024
likebreath added a commit to likebreath/kata-containers that referenced this issue May 7, 2024
This patch upgrades Cloud Hypervisor to v39.0 from v36.0, which contains
fixes of several security advisories from dependencies. Details can be
found from kata-containers#9574.

Fixes: kata-containers#8694, kata-containers#9574

Signed-off-by: Bo Chen <chen.bo@intel.com>
likebreath added a commit to likebreath/kata-containers that referenced this issue May 7, 2024
This patch re-generates the client code for Cloud Hypervisor v39.0.
Note: The client code of cloud-hypervisor's OpenAPI is automatically
generated by openapi-generator.

Fixes: kata-containers#8694, kata-containers#9574

Signed-off-by: Bo Chen <chen.bo@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improvement to an existing feature needs-review Needs to be assessed by the team.
Projects
Issue backlog
  
In progress
Development

No branches or pull requests

1 participant