|
| 1 | +--- |
| 2 | +title: "Cloud Hypervisor v51.0 Released!" |
| 3 | +date: 2026-02-20T01:34:50Z |
| 4 | +draft: false |
| 5 | +contributors: [Cloud Hypervisor Team] |
| 6 | +--- |
| 7 | +This release has been tracked in [v51.0 group](https://github.com/orgs/cloud-hypervisor/projects/6/views/6?filterQuery=release%3A%22Release+51%22) of our [roadmap project](https://github.com/orgs/cloud-hypervisor/projects/6/). |
| 8 | + |
| 9 | +Security Fixes |
| 10 | +-------------- |
| 11 | + |
| 12 | +This release fixes a security vulnerability in disk image handling. |
| 13 | +Details can be found in [GHSA-jmr4-g2hv-mjj6](https://github.com/cloud-hypervisor/cloud-hypervisor/security/advisories/GHSA-jmr4-g2hv-mjj6). |
| 14 | + |
| 15 | +* A new `backing_files=on|off` option has been added to `--disk` to |
| 16 | + explicitly control whether QCOW2 backing files are permitted. This |
| 17 | + defaults to `off` to prevent the loading of backing files entirely. |
| 18 | + (#7685) |
| 19 | +* Explicit image type specification via the user interface, removing |
| 20 | + reliance on format autodetection (#7728). |
| 21 | +* Prevent sector-zero writes for autodetected raw images (#7728). |
| 22 | + |
| 23 | +Significant QCOW2 v3 Improvements |
| 24 | +--------------------------------- |
| 25 | + |
| 26 | +A large number of QCOW2 v3 specification features have been implemented: |
| 27 | + |
| 28 | +* RAW backing file support for QCOW2 overlays (#7570) |
| 29 | +* Zero bit in L2 entries (#7627) |
| 30 | +* Incompatible feature bit validation (#7612) |
| 31 | +* Dirty bit support (#7636) |
| 32 | +* Variable refcount widths (1 to 64-bit) (#7633) |
| 33 | +* Corrupt bit detection and marking (#7639) |
| 34 | +* Autoclear feature bits handling (#7648) |
| 35 | +* Thread safety fix for multiple virtio queues (`num_queues > 1`) |
| 36 | + (#7661) |
| 37 | +* Correct zero-fill for reads beyond backing file size (#7678) |
| 38 | +* Live disk resize support (#7687) |
| 39 | + |
| 40 | +ACPI Generic Initiator Support |
| 41 | +------------------------------ |
| 42 | + |
| 43 | +ACPI Generic Initiator Affinity (SRAT Type 5) support has been added |
| 44 | +to associate VFIO-PCI devices with dedicated memory/CPU-less NUMA |
| 45 | +nodes. This enables the guest OS to make NUMA-aware memory allocation |
| 46 | +decisions for device workloads. A new `device_id` parameter has been |
| 47 | +added to `--numa` for specifying VFIO devices. (#7626) |
| 48 | + |
| 49 | +Block Device DISCARD and WRITE_ZEROES Support |
| 50 | +--------------------------------------------- |
| 51 | + |
| 52 | +The `virtio-blk` device now supports `DISCARD` and `WRITE_ZEROES` |
| 53 | +operations for QCOW2 and RAW image formats. This enables thin |
| 54 | +provisioning and efficient space reclamation when guests trim |
| 55 | +filesystems. A new `sparse=on|off` option has been added to `--disk` to |
| 56 | +control disk space management: `sparse=on` (default) enables thin |
| 57 | +provisioning with space reclamation, while `sparse=off` provides thick |
| 58 | +provisioning with consistent I/O latency. (#7666) |
| 59 | + |
| 60 | +Notable Performance Improvements |
| 61 | +-------------------------------- |
| 62 | + |
| 63 | +* Transparent Huge Pages (THP) support has been extended to cover |
| 64 | + anonymous shared memory (`shared=on`) via `madvise`. Previously, THP |
| 65 | + was only used for non-shared memory. (#7646) |
| 66 | +* The `vhost-user-net` device now uses the default set of vhost-user |
| 67 | + virtio features, including `VIRTIO_F_RING_INDIRECT_DESC`, which |
| 68 | + provides a performance improvement. (#7653) |
| 69 | + |
| 70 | +MSHV Support Improvements |
| 71 | +------------------------- |
| 72 | + |
| 73 | +* Optimize CPU state update after emulation by only updating special |
| 74 | + registers when changed (#7603) |
| 75 | +* Enable SMT for guests with `threads_per_core > 1` (#7668) |
| 76 | +* Stub `save_data_tables()` to unblock VM pause/resume (#7692) |
| 77 | +* Handle `GHCB_INFO_SPECIAL_DBGPRINT` VMG exit in SEV-SNP guest exit |
| 78 | + handler (#7703) |
| 79 | +* Fix CVM boot failure on MSHV (#7548) |
| 80 | +* Fix CPU topology detection for multithreaded configurations (#7576) |
| 81 | + |
| 82 | +Notable Bug Fixes |
| 83 | +----------------- |
| 84 | + |
| 85 | +* Fix VFIO device hot-remove leaving group and container file |
| 86 | + descriptors open, preventing re-add (#7676) |
| 87 | +* Fix snapshot restore when backing file is on read-only storage with |
| 88 | + `shared=false` (#7674) |
| 89 | +* Enforce `VIRTIO_BLK_F_RO` even if guest does not negotiate it |
| 90 | + (#7705) |
| 91 | +* Fix read-only block device FLUSH requests from OVMF preventing VMs |
| 92 | + from booting (#7706) |
| 93 | +* Fix vhost-user device not properly dropping unowned file descriptors |
| 94 | + (#7679) |
| 95 | +* Fix `vhost-user-block` `get_config` interoperability (#7617) |
| 96 | +* Fix vsock TOCTOU race condition by copying packet header from guest |
| 97 | + memory before processing (#7530) |
| 98 | +* Fix vsock handling of large TX packets spanning multiple data |
| 99 | + descriptors (#7680) |
| 100 | +* Add `gettid()` to all seccomp filters (#7596) |
| 101 | +* Fix MAC address parsing that wrongly allowed `+` instead of hex |
| 102 | + characters (#7579) |
| 103 | +* Improve UUID parse error message and `--net` fd help text (#7702) |
| 104 | +* Fix various inconsistencies in our OpenAPI specification file |
| 105 | + (#7716, #7726) |
| 106 | +* Various documentation fixes (#7602, #7606) |
| 107 | + |
| 108 | +Contributors |
| 109 | +------------ |
| 110 | + |
| 111 | +Many thanks to everyone who has contributed to our release: |
| 112 | + |
| 113 | +* Aastha Rawat <aastharawat@microsoft.com> |
| 114 | +* Alyssa Ross <hi@alyssa.is> |
| 115 | +* Anatol Belski <anbelski@linux.microsoft.com> |
| 116 | +* Anirudh Rayabharam <anrayabh@microsoft.com> |
| 117 | +* Bo Chen <bchen@crusoe.ai> |
| 118 | +* Champ-Goblem <cameron@northflank.com> |
| 119 | +* Changyuan Lyu <changyuanl@google.com> |
| 120 | +* Damian Barabonkov <dbctl@pm.me> |
| 121 | +* Demi Marie Obenour <demiobenour@gmail.com> |
| 122 | +* Leander Kohler <leander.kohler@cyberus-technology.de> |
| 123 | +* Muminul Islam <muislam@microsoft.com> |
| 124 | +* Philipp Schuster <philipp.schuster@cyberus-technology.de> |
| 125 | +* Rob Bradford <rbradford@meta.com> |
| 126 | +* Rowen-Ye <rowenye1@gmail.com> |
| 127 | +* Saravanan D <saravanand@crusoe.ai> |
| 128 | +* Stanislav Kinsburskii <skinsburskii@linux.microsoft.com> |
| 129 | +* Thomas Leroy <thomas.leroy.mp@gmail.com> |
| 130 | +* Wei Liu <liuwe@microsoft.com> |
| 131 | +* Yi Wang <foxywang@tencent.com> |
| 132 | +* Zhibin Li <banlu.lzb@antgroup.com> |
| 133 | +* stevenhorsman <steven@uk.ibm.com> |
| 134 | +### Download |
| 135 | + See the <a href="https://github.com/cloud-hypervisor/cloud-hypervisor/releases/tag/v51.0">GitHub Release</a> for the release assets. |
0 commit comments